| 
            Last change
 on this file since 10361 was             9336, checked in by sandervl, 23 years ago           | 
        
        
          | 
             
Updates for shared critical sections 
 
           | 
        
        
          | 
            File size:
            1.1 KB
           | 
        
      
      
| Line |   | 
|---|
| 1 | #ifndef __ODINCRT_H__
 | 
|---|
| 2 | #define __ODINCRT_H__
 | 
|---|
| 3 | 
 | 
|---|
| 4 | #include <win32type.h>
 | 
|---|
| 5 | 
 | 
|---|
| 6 | #ifndef SEM_INDEFINITE_WAIT
 | 
|---|
| 7 | #define SEM_INDEFINITE_WAIT -1
 | 
|---|
| 8 | #endif
 | 
|---|
| 9 | 
 | 
|---|
| 10 | typedef struct {
 | 
|---|
| 11 |         LONG    LockCount;
 | 
|---|
| 12 |         LONG    RecursionCount;
 | 
|---|
| 13 |         ULONG   OwningThread;
 | 
|---|
| 14 |         ULONG   hmtxLock;
 | 
|---|
| 15 |         ULONG   Reserved;
 | 
|---|
| 16 |         LONG    CreationCount;
 | 
|---|
| 17 | } CRITICAL_SECTION_OS2, *PCRITICAL_SECTION_OS2;
 | 
|---|
| 18 | 
 | 
|---|
| 19 | ULONG WIN32API DosDeleteCriticalSection(CRITICAL_SECTION_OS2 *);
 | 
|---|
| 20 | ULONG WIN32API DosEnterCriticalSection(CRITICAL_SECTION_OS2 *, ULONG ulTimeout = SEM_INDEFINITE_WAIT);
 | 
|---|
| 21 | ULONG WIN32API DosInitializeCriticalSection(CRITICAL_SECTION_OS2 *, char *pszSemName, BOOL fShared = FALSE);
 | 
|---|
| 22 | ULONG WIN32API DosAccessCriticalSection(CRITICAL_SECTION_OS2 *, char *pszSemName);
 | 
|---|
| 23 | ULONG WIN32API DosLeaveCriticalSection(CRITICAL_SECTION_OS2 *);
 | 
|---|
| 24 | 
 | 
|---|
| 25 | LONG WIN32API DosInterlockedCompareExchange( PLONG dest, LONG xchg, LONG compare );
 | 
|---|
| 26 | LONG WIN32API DosInterlockedDecrement(LPLONG);
 | 
|---|
| 27 | LONG WIN32API DosInterlockedExchange(LPLONG,LONG);
 | 
|---|
| 28 | LONG WIN32API DosInterlockedExchangeAdd( PLONG dest, LONG incr );
 | 
|---|
| 29 | LONG WIN32API DosInterlockedIncrement(LPLONG);
 | 
|---|
| 30 | 
 | 
|---|
| 31 | 
 | 
|---|
| 32 | #endif //__ODINCRT_H__
 | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.