浏览代码

* initialize previously missing fields of threadmanager record

git-svn-id: trunk@15139 -
Tomas Hajny 15 年之前
父节点
当前提交
ef669a31c8
共有 1 个文件被更改,包括 29 次插入4 次删除
  1. 29 4
      rtl/os2/systhrd.inc

+ 29 - 4
rtl/os2/systhrd.inc

@@ -425,9 +425,8 @@ begin
 end;
 end;
 
 
 
 
-CONST INFINITE=-1;
-
 procedure IntRTLEventWaitFor (AEvent: PRTLEvent);
 procedure IntRTLEventWaitFor (AEvent: PRTLEvent);
+CONST INFINITE=-1;
 begin
 begin
 {$WARNING TODO!}
 {$WARNING TODO!}
 {
 {
@@ -436,6 +435,30 @@ begin
 end;
 end;
 
 
 
 
+function SysTryEnterCriticalSection (var CS): longint;
+begin
+{$WARNING TODO!}
+end;
+
+
+procedure IntRTLEventWaitForTimeout (AEvent: PRTLEvent; Timeout: longint);
+begin
+{$WARNING TODO!}
+{
+  WaitForSingleObject(THANDLE(AEvent), Timeout);
+}
+end;
+
+
+procedure intRTLEventResetEvent (AEvent: PRTLEvent);
+begin
+{$WARNING TODO!}
+{
+  ResetEvent(THANDLE(AEvent));
+}
+end;
+
+
 
 
 var
 var
   OS2ThreadManager: TThreadManager;
   OS2ThreadManager: TThreadManager;
@@ -453,14 +476,15 @@ begin
     ResumeThread           :=@SysResumeThread;
     ResumeThread           :=@SysResumeThread;
     KillThread             :=@SysKillThread;
     KillThread             :=@SysKillThread;
     ThreadSwitch           :=@SysThreadSwitch;
     ThreadSwitch           :=@SysThreadSwitch;
+    CloseThread		   :=@SysCloseThread;
     WaitForThreadTerminate :=@SysWaitForThreadTerminate;
     WaitForThreadTerminate :=@SysWaitForThreadTerminate;
     ThreadSetPriority      :=@SysThreadSetPriority;
     ThreadSetPriority      :=@SysThreadSetPriority;
     ThreadGetPriority      :=@SysThreadGetPriority;
     ThreadGetPriority      :=@SysThreadGetPriority;
-    CloseThread		   :=@SysCloseThread;
     GetCurrentThreadId     :=@SysGetCurrentThreadId;
     GetCurrentThreadId     :=@SysGetCurrentThreadId;
     InitCriticalSection    :=@SysInitCriticalSection;
     InitCriticalSection    :=@SysInitCriticalSection;
     DoneCriticalSection    :=@SysDoneCriticalSection;
     DoneCriticalSection    :=@SysDoneCriticalSection;
     EnterCriticalSection   :=@SysEnterCriticalSection;
     EnterCriticalSection   :=@SysEnterCriticalSection;
+    TryEnterCriticalSection:=@SysTryEnterCriticalSection;
     LeaveCriticalSection   :=@SysLeaveCriticalSection;
     LeaveCriticalSection   :=@SysLeaveCriticalSection;
     InitThreadVar          :=@SysInitThreadVar;
     InitThreadVar          :=@SysInitThreadVar;
     RelocateThreadVar      :=@SysRelocateThreadVar;
     RelocateThreadVar      :=@SysRelocateThreadVar;
@@ -474,9 +498,10 @@ begin
     RTLEventCreate         :=@IntRTLEventCreate;
     RTLEventCreate         :=@IntRTLEventCreate;
     RTLEventDestroy        :=@IntRTLEventDestroy;
     RTLEventDestroy        :=@IntRTLEventDestroy;
     RTLEventSetEvent       :=@IntRTLEventSetEvent;
     RTLEventSetEvent       :=@IntRTLEventSetEvent;
+    RTLEventResetEvent     :=@intRTLEventResetEvent;
     RTLEventWaitFor        :=@IntRTLEventWaitFor;
     RTLEventWaitFor        :=@IntRTLEventWaitFor;
+    RTLEventWaitForTimeout :=@intRTLEventWaitForTimeout;
     end;
     end;
   SetThreadManager (OS2ThreadManager);
   SetThreadManager (OS2ThreadManager);
 end;
 end;
 
 
-