#if wxUSE_THREADS
#include "wx/msw/private.h"
+#include "wx/msw/missing.h"
#include "wx/module.h"
#include "wx/thread.h"
wxCriticalSection::wxCriticalSection()
{
- wxCOMPILE_TIME_ASSERT( sizeof(CRITICAL_SECTION) <= sizeof(m_buffer),
+ wxCOMPILE_TIME_ASSERT( sizeof(CRITICAL_SECTION) <= sizeof(wxCritSectBuffer),
wxCriticalSectionBufferTooSmall );
::InitializeCriticalSection((CRITICAL_SECTION *)m_buffer);
wxMutexError LockTimeout(DWORD milliseconds);
HANDLE m_mutex;
+
+ DECLARE_NO_COPY_CLASS(wxMutexInternal)
};
// all mutexes are recursive under Win32 so we don't use mutexType
{
if ( !::ReleaseMutex(m_mutex) )
{
- wxLogLastError(_("ReleaseMutex()"));
+ wxLogLastError(_T("ReleaseMutex()"));
return wxMUTEX_MISC_ERROR;
}
private:
HANDLE m_semaphore;
+
+ DECLARE_NO_COPY_CLASS(wxSemaphoreInternal)
};
wxSemaphoreInternal::wxSemaphoreInternal(int initialcount, int maxcount)
wxThreadState m_state; // state, see wxThreadState enum
unsigned int m_priority; // thread priority in "wx" units
DWORD m_tid; // thread id
+
+ DECLARE_NO_COPY_CLASS(wxThreadInternal)
};
THREAD_RETVAL THREAD_CALLCONV wxThreadInternal::WinThreadStart(void *param)
// we can't just wait for the thread to terminate because it might be
// calling some GUI functions and so it will never terminate before we
// process the Windows messages that result from these functions
- DWORD result;
+ DWORD result = 0; // suppress warnings from broken compilers
do
{
if ( IsMain() )