00001
00002
00003
00004
00005
00006
00007 #import "NSObject.h"
00008
00009 @interface ITSyncFileLocker : NSObject
00010 {
00011 unsigned int _uid;
00012 id _delegate;
00013 unsigned int _exclusive:1;
00014 unsigned int _needsDidAcquireCallback:1;
00015 }
00016
00017 + (id)lockfilePath;
00018 + (void)_ensureLockFileParentDirectoryExists;
00019 + (BOOL)_acquireLock:(BOOL)fp8 sharedLock:(BOOL)fp12 instanceUID:(unsigned int)fp16 threadArgs:(struct __CFDictionary *)fp20 notifyMainThreadIfAcquired:(BOOL)fp24;
00020 + (void)_blockingLockWasAcquired:(struct __CFDictionary *)fp8;
00021 - (id)initWithDelegate:(id)fp8 useExclusiveLocks:(BOOL)fp12;
00022 - (id)description;
00023 - (void)clearDelegate;
00024 - (void)_releaseLockNoSpinLock;
00025 - (void)dealloc;
00026 - (void)releaseLock;
00027 - (void)_blockingLockWasAcquired;
00028 - (BOOL)hasLock;
00029 - (BOOL)acquireLockTryNow;
00030 - (BOOL)acquireLockBlockingOnNewThreadIfNecessary;
00031
00032 @end
00033