diff options
Diffstat (limited to 'TSRM')
-rw-r--r-- | TSRM/TSRM.c | 15 | ||||
-rw-r--r-- | TSRM/TSRM.h | 1 |
2 files changed, 16 insertions, 0 deletions
diff --git a/TSRM/TSRM.c b/TSRM/TSRM.c index 72a57f5d5f..9451ed1731 100644 --- a/TSRM/TSRM.c +++ b/TSRM/TSRM.c @@ -781,6 +781,21 @@ TSRM_API uint8_t tsrm_is_main_thread(void) return in_main_thread; }/*}}}*/ +TSRM_API const char *tsrm_api_name(void) +{/*{{{*/ +#if defined(GNUPTH) + return "GNU Pth"; +#elif defined(PTHREADS) + return "POSIX Threads"; +#elif defined(TSRM_ST) + return "State Threads"; +#elif defined(TSRM_WIN32) + return "Windows Threads"; +#else + return "Unknown"; +#endif +}/*}}}*/ + #endif /* ZTS */ /* diff --git a/TSRM/TSRM.h b/TSRM/TSRM.h index 9ba9919812..2ab1f44ced 100644 --- a/TSRM/TSRM.h +++ b/TSRM/TSRM.h @@ -143,6 +143,7 @@ TSRM_API void tsrm_free_interpreter_context(void *context); TSRM_API void *tsrm_get_ls_cache(void); TSRM_API uint8_t tsrm_is_main_thread(void); +TSRM_API const char *tsrm_api_name(void); #if defined(__cplusplus) && __cplusplus > 199711L # define TSRM_TLS thread_local |