summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnatol Belski <ab@php.net>2017-12-21 17:54:31 +0100
committerAnatol Belski <ab@php.net>2017-12-21 17:54:31 +0100
commite8db69f3f799b67cf13906660dc5a58a7ea468eb (patch)
tree6c32163315734315e40113222b21708afdcf2518
parent259085f2012833bd9fb02714db44cc21fbf6bc9b (diff)
downloadphp-git-e8db69f3f799b67cf13906660dc5a58a7ea468eb.tar.gz
Add info about thread API used
-rw-r--r--TSRM/TSRM.c15
-rw-r--r--TSRM/TSRM.h1
-rw-r--r--ext/standard/info.c1
3 files changed, 17 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
diff --git a/ext/standard/info.c b/ext/standard/info.c
index 3d920b6461..d71ddd64b8 100644
--- a/ext/standard/info.c
+++ b/ext/standard/info.c
@@ -870,6 +870,7 @@ PHPAPI void php_print_info(int flag)
#ifdef ZTS
php_info_print_table_row(2, "Thread Safety", "enabled" );
+ php_info_print_table_row(2, "Thread API", tsrm_api_name() );
#else
php_info_print_table_row(2, "Thread Safety", "disabled" );
#endif