summaryrefslogtreecommitdiff
path: root/TSRM
diff options
context:
space:
mode:
Diffstat (limited to 'TSRM')
-rw-r--r--TSRM/TSRM.c15
-rw-r--r--TSRM/TSRM.h1
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