forked from boostorg/detail
Fixed WinAPI compilation. Ported timed mutex to waitable timer. Windows time points are now aligned with FILETIME to reduce conversion overhead when used with waitable timers.
[SVN r86192]
This commit is contained in:
@@ -101,7 +101,7 @@ extern "C" {
|
|||||||
# ifdef _WIN64
|
# ifdef _WIN64
|
||||||
#if defined(__CYGWIN__)
|
#if defined(__CYGWIN__)
|
||||||
typedef long INT_PTR_;
|
typedef long INT_PTR_;
|
||||||
typedef unsigned long INT_PTR_;
|
typedef unsigned long UINT_PTR_;
|
||||||
typedef long LONG_PTR_;
|
typedef long LONG_PTR_;
|
||||||
typedef unsigned long ULONG_PTR_;
|
typedef unsigned long ULONG_PTR_;
|
||||||
#else
|
#else
|
||||||
@@ -112,7 +112,7 @@ extern "C" {
|
|||||||
#endif
|
#endif
|
||||||
# else
|
# else
|
||||||
typedef int INT_PTR_;
|
typedef int INT_PTR_;
|
||||||
typedef unsigned int INT_PTR_;
|
typedef unsigned int UINT_PTR_;
|
||||||
typedef long LONG_PTR_;
|
typedef long LONG_PTR_;
|
||||||
typedef unsigned long ULONG_PTR_;
|
typedef unsigned long ULONG_PTR_;
|
||||||
# endif
|
# endif
|
||||||
|
@@ -27,10 +27,15 @@ namespace winapi
|
|||||||
typedef ::NEARPROC NEARPROC_;
|
typedef ::NEARPROC NEARPROC_;
|
||||||
typedef ::PROC PROC_;
|
typedef ::PROC PROC_;
|
||||||
|
|
||||||
using ::LoadLibrary;
|
# ifdef BOOST_NO_ANSI_APIS
|
||||||
|
using ::LoadLibraryW;
|
||||||
|
using ::GetModuleHandleW;
|
||||||
|
# else
|
||||||
|
using ::LoadLibraryA;
|
||||||
|
using ::GetModuleHandleA;
|
||||||
|
# endif
|
||||||
using ::FreeLibrary;
|
using ::FreeLibrary;
|
||||||
using ::GetProcAddress;
|
using ::GetProcAddress;
|
||||||
using ::GetModuleHandleA;
|
|
||||||
#else
|
#else
|
||||||
extern "C" {
|
extern "C" {
|
||||||
# ifdef _WIN64
|
# ifdef _WIN64
|
||||||
@@ -43,10 +48,26 @@ extern "C" {
|
|||||||
typedef int (WINAPI *PROC_)();
|
typedef int (WINAPI *PROC_)();
|
||||||
# endif // _WIN64
|
# endif // _WIN64
|
||||||
|
|
||||||
|
# ifdef BOOST_NO_ANSI_APIS
|
||||||
__declspec(dllimport) HMODULE_ WINAPI
|
__declspec(dllimport) HMODULE_ WINAPI
|
||||||
LoadLibrary(
|
LoadLibraryW(
|
||||||
LPCTSTR_ lpFileName
|
LPCWSTR_ lpFileName
|
||||||
);
|
);
|
||||||
|
__declspec(dllimport) HMODULE_ WINAPI
|
||||||
|
GetModuleHandleW(
|
||||||
|
LPCWSTR_ lpFileName
|
||||||
|
);
|
||||||
|
# else
|
||||||
|
__declspec(dllimport) HMODULE_ WINAPI
|
||||||
|
LoadLibraryA(
|
||||||
|
LPCSTR_ lpFileName
|
||||||
|
);
|
||||||
|
__declspec(dllimport) HMODULE_ WINAPI
|
||||||
|
GetModuleHandleA(
|
||||||
|
LPCSTR_ lpFileName
|
||||||
|
);
|
||||||
|
# endif
|
||||||
|
|
||||||
__declspec(dllimport) BOOL_ WINAPI
|
__declspec(dllimport) BOOL_ WINAPI
|
||||||
FreeLibrary(
|
FreeLibrary(
|
||||||
HMODULE_ hModule
|
HMODULE_ hModule
|
||||||
@@ -56,10 +77,6 @@ extern "C" {
|
|||||||
HMODULE_ hModule,
|
HMODULE_ hModule,
|
||||||
LPCSTR_ lpProcName
|
LPCSTR_ lpProcName
|
||||||
);
|
);
|
||||||
__declspec(dllimport) HMODULE_ WINAPI
|
|
||||||
GetModuleHandleA(
|
|
||||||
LPCSTR_ lpFileName
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@@ -147,6 +147,8 @@ const DWORD_ wait_failed = (DWORD_)0xFFFFFFFF;
|
|||||||
|
|
||||||
#endif // defined( BOOST_USE_WINDOWS_H )
|
#endif // defined( BOOST_USE_WINDOWS_H )
|
||||||
|
|
||||||
|
const DWORD_ max_non_infinite_wait = (DWORD_)0xFFFFFFFE;
|
||||||
|
|
||||||
BOOST_FORCEINLINE HANDLE_ create_anonymous_mutex(_SECURITY_ATTRIBUTES* lpAttributes, BOOL_ bInitialOwner)
|
BOOST_FORCEINLINE HANDLE_ create_anonymous_mutex(_SECURITY_ATTRIBUTES* lpAttributes, BOOL_ bInitialOwner)
|
||||||
{
|
{
|
||||||
#ifdef BOOST_NO_ANSI_APIS
|
#ifdef BOOST_NO_ANSI_APIS
|
||||||
|
Reference in New Issue
Block a user