dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dotgnu-pnet-commits] CVS: pnet/include il_engine.h, 1.40, 1.41 il_image


From: Thong Nguyen <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnet/include il_engine.h, 1.40, 1.41 il_image.h, 1.20, 1.21 il_thread.h, 1.15, 1.16
Date: Tue, 15 Jul 2003 18:17:35 -0400

Update of /cvsroot/dotgnu-pnet/pnet/include
In directory subversions:/tmp/cvs-serv24211/include

Modified Files:
        il_engine.h il_image.h il_thread.h 
Log Message:
Various updates to threading & finalization


Index: il_engine.h
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/include/il_engine.h,v
retrieving revision 1.40
retrieving revision 1.41
diff -C2 -r1.40 -r1.41
*** il_engine.h 6 Jul 2003 00:41:16 -0000       1.40
--- il_engine.h 15 Jul 2003 22:17:33 -0000      1.41
***************
*** 23,26 ****
--- 23,27 ----
  
  #include "il_program.h"
+ #include "il_thread.h"
  
  #ifdef        __cplusplus
***************
*** 181,184 ****
--- 182,200 ----
   */
  void ILExecInit(unsigned long maxSize);
+ 
+ /*
+  *    Deinitialize the engine.
+  */
+ void ILExecDeinit();
+ 
+ /*
+  *    Registers an ILThread and allow it to execute managed code. 
+  */
+ ILExecThread *ILThreadRegisterForManagedExecution(ILExecProcess *process, 
ILThread *thread);
+ 
+ /*
+  *    Unregisters an ILThread that no longer needs to execute managed code.
+  */
+ void ILThreadUnregisterForManagedExecution(ILThread *thread);
  
  /*

Index: il_image.h
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/include/il_image.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -C2 -r1.20 -r1.21
*** il_image.h  7 Jul 2003 12:44:51 -0000       1.20
--- il_image.h  15 Jul 2003 22:17:33 -0000      1.21
***************
*** 166,169 ****
--- 166,179 ----
  
  /*
+  *    Used by the engine to attach user data to the context instance.
+  */
+ void ILContextSetUserData(ILContext *context, void *userData);
+ 
+ /*
+ *     Used by the engine to get attached user data from the context instance.
+ */
+ void *ILContextGetUserData(ILContext *context);
+ 
+ /*
   * Create an IL image.  This is typically used by compilers
   * when building an image in-memory in preparation for writing

Index: il_thread.h
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/include/il_thread.h,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -r1.15 -r1.16
*** il_thread.h 7 Jul 2003 19:44:05 -0000       1.15
--- il_thread.h 15 Jul 2003 22:17:33 -0000      1.16
***************
*** 23,27 ****
  
  #include "il_system.h"
- #include "il_engine.h"
  
  #ifdef        __cplusplus
--- 23,26 ----
***************
*** 63,76 ****
  
  /*
-  *    Registers an ILThread and allow it to execute managed code. 
-  */
- ILExecThread *ILThreadRegisterForManagedExecution(ILExecProcess *process, 
ILThread *thread);
- 
- /*
-  *    Unregisters an ILThread that no longer needs to execute managed code.
-  */
- void ILThreadUnregisterForManagedExecution(ILThread *thread);
- 
- /*
   * Determine if the system has thread support.  This can
   * be called either before or after "ILThreadInit".
--- 62,65 ----
***************
*** 122,126 ****
  /*
   * Set the object reference that is associated with a thread.
!  * This is typically only required for the "main" thread.
   */
  void ILThreadSetObject(ILThread *thread, void *objectArg);
--- 111,115 ----
  /*
   * Set the object reference that is associated with a thread.
!  * This is used by the engine to store a pointer to an ILExecThread.
   */
  void ILThreadSetObject(ILThread *thread, void *objectArg);
***************
*** 183,186 ****
--- 172,194 ----
  
  /*
+  *    Thread priorities.
+  */
+ #define IL_TP_LOWEST                                  0x0
+ #define IL_TP_BELOW_NORMAL            0x1
+ #define IL_TP_NORMAL                                  0x2
+ #define IL_TP_ABOVE_NORMAL            0x3
+ #define IL_TP_HIGHEST                                 0x4
+ 
+ /*
+  *    Sets the thread priority.
+  */
+ void ILThreadSetPriority(ILThread *thread, int priority);
+ 
+ /*
+  *    Gets the thread priority.
+  */
+ int ILThreadGetPriority(ILThread *thread);
+ 
+ /*
   * Join result codes.
   */
***************
*** 344,347 ****
--- 352,360 ----
  
  /*
+  *    Signals and waits for a handle atomically.
+  */
+ int ILSignalAndWait(ILWaitHandle *signalHandle, ILWaitHandle *waitHandle, 
ILUInt32 timeout);
+ 
+ /*
   * Wait for any wait handle in a set to become available.
   * Returns the index of the handle that was acquired.
***************
*** 402,405 ****
--- 415,420 ----
  int ILWaitMonitorCanClose(ILWaitHandle *handle);
  
+ #define IL_WAIT_LEAVE_STILL_OWNS              (2)
+ 
  /*
   *    Similar to ILWaitMonitorLeave except that waiting moniters aren't 
signalled.
***************
*** 429,445 ****
  
  /*
!  * Create a wait event.
   */
  ILWaitHandle *ILWaitEventCreate(int manualReset, int initialState);
  
  /*
!  * Set the event.
   */
  int ILWaitEventSet(ILWaitHandle *event);
  
  /*
!  * Reset the event.
   */
  int ILWaitEventReset(ILWaitHandle *event);
  
  #ifdef        __cplusplus 
--- 444,469 ----
  
  /*
!  * Creates an event.
   */
  ILWaitHandle *ILWaitEventCreate(int manualReset, int initialState);
  
  /*
!  * Sets an event.
   */
  int ILWaitEventSet(ILWaitHandle *event);
  
  /*
!  * Resets an event.
   */
  int ILWaitEventReset(ILWaitHandle *event);
+ 
+ /*
+  *    Pulses an event.
+  *
+  * If the wait event is a manual reset event, all waiting threads are 
signalled.
+  * If the wait event is an auto reset event, a single waiting thread is 
signalled.
+  * On return, the wait event is unsignalled.
+  */
+ int ILWaitEventPulse(ILWaitHandle *event);
  
  #ifdef        __cplusplus 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]