FLOCK

Section: ¸®´ª½º ÇÁ·Î±×·¡¸Ó ¸Þ´º¾ó (2)
Updated: 1998³â 12¿ù 11ÀÏ
Index
Return to Main Contents
 

À̸§

flock - ¿­·ÁÁø ÆÄÀÏ¿¡ ±Ç°í(advisory) Àá±ÝÀ» Àû¿ëÇϰųª Á¦°ÅÇÑ´Ù.  

»ç¿ë¹ý

#include <sys/file.h>

int flock(int fd, int operation)  

¼³¸í

¿­·ÁÁø ÆÄÀÏ¿¡ ±Ç°í Àá±ÝÀ» Àû¿ëÇϰųª Á¦°ÅÇÑ´Ù. ÆÄÀÏÀº fd ·Î ÁöÁ¤µÈ´Ù. À¯È¿ÇÑ ¿¬»êÀº ´ÙÀ½°ú °°´Ù:

LOCK_SH
°øÀ¯(shared) Àá±Ý. ÇÑ°³ ÀÌ»óÀÇ ÇÁ·Î¼¼½ºµéÀº ÁÖ¾îÁø ½Ã°£¿¡ ÁÖ¾îÁø ÆÄÀÏ¿¡ ´ëÇÑ °øÀ¯ Àá±ÝÀ» ÇÒ¼ö ÀÖ´Ù.
LOCK_EX
¹èŸ(exclusive) Àá±Ý. ´ÜÁö ÇÑ°³ÀÇ ÇÁ·Î¼¼½º¸¸ÀÌ ÁÖ¾îÁø ½Ã°£¿¡ ÁÖ¾îÁø ÆÄÀÏ¿¡ ´ëÇØ ¹èŸ Àá±ÝÀ» ÇÒ¼ö ÀÖ´Ù.
LOCK_UN
Àá±ÝÀ» Ǭ´Ù.
LOCK_NB
Àá±ÝÀÏ ¶§ ºí·°ÇÏÁö ¾Ê´Â´Ù. ´Ù¸¥ ¿¬»ê°ú ÇÔ²² or¿¡ ÀÇÇØ ÁöÁ¤µÈ´Ù.

ÇÑ ÆÄÀÏ¿¡ µ¿½Ã¿¡ °øÀ¯ Àá±Ý°ú ¹èŸ Àá±ÝÀ» ÇÒ ¼ö ¾ø´Ù.

ÆÄÀÏÀº ÆÄÀÏ ±â¼úÀÚ¿¡ ´ëÇØ Àá±ÝÀÌ ÀϾ´Â °ÍÀÌ ¾Æ´Ï¶ó, inode¿¡ ´ëÇØ Àá±ÝÀÌ µÈ´Ù. ±×·¡¼­, dup(2)¿Í fork(2)´Â Áߺ¹µÈ Àá±ÝÀ» ¸¸µéÁö ¾Ê´Â´Ù.

 

¹Ýȯ°ª

¼º°ø½Ã, 0ÀÌ ¸®ÅϵȴÙ. ¿¡·¯½Ã, -1ÀÌ ¸®ÅϵǸç, errno´Â Àû´çÇÑ °ªÀ¸·Î ¼³Á¤µÈ´Ù.  

¿¡·¯

EWOULDBLOCK
ÆÄÀÏÀº Àá°Ü ÀÖ°í LOCK_NB Ç÷¡±×°¡ ¼±ÅõǾú´Ù.
 

ȣȯ

4.4BSD (flock(2)Àº 4.2BSD¿¡¼­ óÀ½À¸·Î ³ªÅ¸³µ´Ù).  

ÁÖÀÇ

flock(2)Àº NFS¿¡ ÀÖ´Â ÆÄÀÏÀ» Àá±ÝÀ» ÇÏÁö ¾Ê´Â´Ù. ´ë½Å¿¡ fcntl(2)¸¦ »ç¿ëÇضó: ÀÌ ½Ã½ºÅÛ ÄÝÀº ÃֽŠ¹öÀüÀÌ°í ¼­¹ö°¡ Àá±ÝÀ» Áö¿øÇÑ´Ù¸é NFS¿¡¼­µµ ÀÛµ¿ÇÑ´Ù.

flock(2)°ú fcntl(2) Àá±ÝÀº »ý¼ºµÈ ÇÁ·Î¼¼½º¿Í dup(2)¿¡ ´ëÇؼ­ ´Ù¸¥ Àǹ̸¦ °®´Â´Ù.  

°ü·Ã Ç׸ñ

open(2), close(2), dup(2), execve(2), fcntl(2), fork(2). /usr/src/linux/Documentation ¾È¿¡ locks.txt¿Í mandatory.txtÀÌ ÀÖ´Ù.  

¿ªÀÚ

Á¤°­ÈÆ <skyeyes@soback.kornet.net>, 2000³â 5¿ù 1ÀÏ


 

Index

À̸§
»ç¿ë¹ý
¼³¸í
¹Ýȯ°ª
¿¡·¯
ȣȯ
ÁÖÀÇ
°ü·Ã Ç׸ñ
¿ªÀÚ

This document was created by man2html, using the manual pages.
Time: 08:07:00 GMT, March 25, 2004