File_Lock.inl

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // $Id: File_Lock.inl 80826 2008-03-04 14:51:23Z wotte $
00004 
00005 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
00006 
00007 ACE_INLINE int
00008 ACE_File_Lock::acquire_read (short whence, ACE_OFF_T start, ACE_OFF_T len)
00009 {
00010 // ACE_TRACE ("ACE_File_Lock::acquire_read");
00011   return ACE_OS::flock_rdlock (&this->lock_, whence, start, len);
00012 }
00013 
00014 ACE_INLINE int
00015 ACE_File_Lock::tryacquire_read (short whence, ACE_OFF_T start, ACE_OFF_T len)
00016 {
00017 // ACE_TRACE ("ACE_File_Lock::tryacquire_read");
00018   return ACE_OS::flock_tryrdlock (&this->lock_, whence, start, len);
00019 }
00020 
00021 ACE_INLINE int
00022 ACE_File_Lock::tryacquire_write (short whence, ACE_OFF_T start, ACE_OFF_T len)
00023 {
00024 // ACE_TRACE ("ACE_File_Lock::tryacquire_write");
00025   return ACE_OS::flock_trywrlock (&this->lock_, whence, start, len);
00026 }
00027 
00028 ACE_INLINE int
00029 ACE_File_Lock::tryacquire_write_upgrade (short whence,
00030                                          ACE_OFF_T start,
00031                                          ACE_OFF_T len)
00032 {
00033 // ACE_TRACE ("ACE_File_Lock::tryacquire_write_upgrade");
00034   return ACE_OS::flock_trywrlock (&this->lock_, whence, start, len);
00035 }
00036 
00037 ACE_INLINE int
00038 ACE_File_Lock::tryacquire (short whence, ACE_OFF_T start, ACE_OFF_T len)
00039 {
00040 // ACE_TRACE ("ACE_File_Lock::tryacquire");
00041   return this->tryacquire_write (whence, start, len);
00042 }
00043 
00044 ACE_INLINE int
00045 ACE_File_Lock::acquire_write (short whence, ACE_OFF_T start, ACE_OFF_T len)
00046 {
00047 // ACE_TRACE ("ACE_File_Lock::acquire_write");
00048   return ACE_OS::flock_wrlock (&this->lock_, whence, start, len);
00049 }
00050 
00051 ACE_INLINE int
00052 ACE_File_Lock::acquire (short whence, ACE_OFF_T start, ACE_OFF_T len)
00053 {
00054 // ACE_TRACE ("ACE_File_Lock::acquire");
00055   return this->acquire_write (whence, start, len);
00056 }
00057 
00058 ACE_INLINE int
00059 ACE_File_Lock::release (short whence, ACE_OFF_T start, ACE_OFF_T len)
00060 {
00061 // ACE_TRACE ("ACE_File_Lock::release");
00062   return ACE_OS::flock_unlock (&this->lock_, whence, start, len);
00063 }
00064 
00065 ACE_INLINE int
00066 ACE_File_Lock::remove (int unlink_file)
00067 {
00068 // ACE_TRACE ("ACE_File_Lock::remove");
00069 
00070   int result = 0;
00071 
00072   if (this->removed_ == 0)
00073     {
00074       this->removed_ = 1;
00075       result = ACE_OS::flock_destroy (&this->lock_,
00076                                       unlink_file);
00077     }
00078   return result;
00079 }
00080 
00081 ACE_INLINE ACE_HANDLE
00082 ACE_File_Lock::get_handle (void) const
00083 {
00084 // ACE_TRACE ("ACE_File_Lock::get_handle");
00085   return this->lock_.handle_;
00086 }
00087 
00088 ACE_INLINE void
00089 ACE_File_Lock::set_handle (ACE_HANDLE h)
00090 {
00091 // ACE_TRACE ("ACE_File_Lock::set_handle");
00092   this->lock_.handle_ = h;
00093   this->removed_ = 0;
00094 }
00095 
00096 ACE_END_VERSIONED_NAMESPACE_DECL

Generated on Tue Feb 2 17:18:39 2010 for ACE by  doxygen 1.4.7