示例#1
0
 private static bool TryDoFileLocking(int fd, bool lockFile, FlockOperation? specificFlag = null)
 {
     if (fd >= 0) 
     {
         int res;
         Errno lastError;
         do
         {
             res = Flock(fd, specificFlag ?? (lockFile ? FlockOperation.LOCK_EX : FlockOperation.LOCK_UN));
             lastError = Stdlib.GetLastError();
         }
         while(res != 0 && lastError == Errno.EINTR);
         // if can't get lock ...
         return res == 0;
     } 
     return false;
 }
示例#2
0
 private extern static int Flock(int fd, FlockOperation operation);
示例#3
0
 private extern static int Flock(int fd, FlockOperation operation);