MT support in win32
This commit is contained in:
parent
fe4218be19
commit
a309f47794
@ -477,8 +477,12 @@ InitTime (int wid)
|
|||||||
Times_last_time = TimesStartOfTimes = t;
|
Times_last_time = TimesStartOfTimes = t;
|
||||||
} else {
|
} else {
|
||||||
#if THREADS
|
#if THREADS
|
||||||
|
REMOTE_ThreadHandle(wid).start_of_timesp = (struct _FILETIME *)malloc(sizeof(FILETIME));
|
||||||
|
REMOTE_ThreadHandle(wid).last_timep = (struct _FILETIME *)malloc(sizeof(FILETIME));
|
||||||
|
REMOTE_ThreadHandle(wid).start_of_times_sysp = (struct _FILETIME *)malloc(sizeof(FILETIME));
|
||||||
|
REMOTE_ThreadHandle(wid).last_time_sysp = (struct _FILETIME *)malloc(sizeof(FILETIME));
|
||||||
(*REMOTE_ThreadHandle(wid).last_timep).dwLowDateTime =
|
(*REMOTE_ThreadHandle(wid).last_timep).dwLowDateTime =
|
||||||
UserTime.dwLowDateTime;pp
|
UserTime.dwLowDateTime;
|
||||||
(*REMOTE_ThreadHandle(wid).last_timep).dwHighDateTime =
|
(*REMOTE_ThreadHandle(wid).last_timep).dwHighDateTime =
|
||||||
UserTime.dwHighDateTime;
|
UserTime.dwHighDateTime;
|
||||||
(*REMOTE_ThreadHandle(wid).start_of_timesp).dwLowDateTime =
|
(*REMOTE_ThreadHandle(wid).start_of_timesp).dwLowDateTime =
|
||||||
@ -1494,8 +1498,8 @@ STATIC_PROTO (void my_signal, (int, void (*)(int)));
|
|||||||
static RETSIGTYPE
|
static RETSIGTYPE
|
||||||
HandleMatherr(int sig)
|
HandleMatherr(int sig)
|
||||||
{
|
{
|
||||||
#if HAVE_FETESTEXCEPT
|
|
||||||
CACHE_REGS
|
CACHE_REGS
|
||||||
|
#if HAVE_FETESTEXCEPT
|
||||||
/* This should work in Linux, but it doesn't seem to. */
|
/* This should work in Linux, but it doesn't seem to. */
|
||||||
|
|
||||||
int raised = fetestexcept(FE_ALL_EXCEPT);
|
int raised = fetestexcept(FE_ALL_EXCEPT);
|
||||||
|
7
H/Yap.h
7
H/Yap.h
@ -746,11 +746,16 @@ typedef struct thandle {
|
|||||||
#endif
|
#endif
|
||||||
pthread_mutex_t tlock;
|
pthread_mutex_t tlock;
|
||||||
pthread_mutex_t tlock_status;
|
pthread_mutex_t tlock_status;
|
||||||
#if HAVE_GETRUSAGE||defined(_WIN32)
|
#if HAVE_GETRUSAGE
|
||||||
struct timeval *start_of_timesp;
|
struct timeval *start_of_timesp;
|
||||||
struct timeval *last_timep;
|
struct timeval *last_timep;
|
||||||
struct timeval *start_of_times_sysp;
|
struct timeval *start_of_times_sysp;
|
||||||
struct timeval *last_time_sysp;
|
struct timeval *last_time_sysp;
|
||||||
|
#elif _WIN32
|
||||||
|
struct _FILETIME *start_of_timesp;
|
||||||
|
struct _FILETIME *last_timep;
|
||||||
|
struct _FILETIME *start_of_times_sysp;
|
||||||
|
struct _FILETIME *last_time_sysp;
|
||||||
#endif
|
#endif
|
||||||
} yap_thandle;
|
} yap_thandle;
|
||||||
#endif /* THREADS */
|
#endif /* THREADS */
|
||||||
|
Reference in New Issue
Block a user