Annotation of parser3/src/include/pa_os.h, revision 1.7

1.1       paf         1: /** @file
                      2:        Parser: commonly used functions.
                      3: 
1.5       paf         4:        Copyright (c) 2001-2005 ArtLebedev Group (http://www.artlebedev.com)
1.1       paf         5:        Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
                      6: */
                      7: 
                      8: #ifndef PA_OS_H
                      9: #define PA_OS_H
                     10: 
1.7     ! misha      11: static const char * const IDENT_OS_H="$Date: 2007/05/24 10:25:56 $";
1.6       misha      12: 
1.7     ! misha      13: #define PA_LOCK_ATTEMPTS 20
        !            14: #define PA_LOCK_WAIT_TIMEOUT_SECS 0
        !            15: #define PA_LOCK_WAIT_TIMEOUT_USECS 500000
1.6       misha      16: 
                     17: // 'blocking' mean we will wait till other process release lock 
                     18: // but we'll make PA_LOCK_ATTEMPTS attempts with PA_LOCK_WAIT_TIMEOUT secs delaus between attempts 
                     19: // 'nonblocking' mean we will make only 1 attempt without waiting
1.1       paf        20: 
                     21: int pa_lock_shared_blocking(int fd);
                     22: int pa_lock_exclusive_blocking(int fd);
                     23: int pa_lock_exclusive_nonblocking(int fd);
                     24: int pa_unlock(int fd);
                     25: 
1.2       paf        26: /// yields to OS for secs secs and usecs microseconds (1E-6)
1.1       paf        27: int pa_sleep(unsigned long secs, unsigned long usecs);
                     28: 
                     29: #endif

E-mail: