X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2Fwin32%2FAsyncIO.c;h=54fc5cb526c5ebe1d5e93a70caf101fee79319d5;hb=e1cf7f788fe0e6ff984627641cfde2c17999de5d;hp=d471ee88793d6e1cfbf03a9c653a83aee76a3078;hpb=ee4d9a57ab125607e3029a8c1d052114956811f5;p=ghc-hetmet.git diff --git a/rts/win32/AsyncIO.c b/rts/win32/AsyncIO.c index d471ee8..54fc5cb 100644 --- a/rts/win32/AsyncIO.c +++ b/rts/win32/AsyncIO.c @@ -4,6 +4,9 @@ * * (c) sof, 2002-2003. */ + +#if !defined(THREADED_RTS) + #include "Rts.h" #include "RtsUtils.h" #include @@ -171,9 +174,9 @@ startupAsyncIO() } void -shutdownAsyncIO() +shutdownAsyncIO(rtsBool wait_threads) { - ShutdownIOManager(); + ShutdownIOManager(wait_threads); if (completed_req_event != INVALID_HANDLE_VALUE) { CloseHandle(completed_req_event); completed_req_event = INVALID_HANDLE_VALUE; @@ -186,6 +189,7 @@ shutdownAsyncIO() CloseHandle(completed_table_sema); completed_table_sema = NULL; } + DeleteCriticalSection(&queue_lock); } /* @@ -354,3 +358,4 @@ resetAbandonRequestWait( void ) ResetEvent(abandon_req_wait); } +#endif /* !defined(THREADED_RTS) */