summaryrefslogtreecommitdiff
path: root/mysys/my_winthread.c
diff options
context:
space:
mode:
authorVladislav Vaintroub <vvaintroub@mysql.com>2009-09-30 03:22:57 +0200
committerVladislav Vaintroub <vvaintroub@mysql.com>2009-09-30 03:22:57 +0200
commit2bc1930c6c40b964fce9c698a1ca75da3138ad63 (patch)
tree8e7150c7ea9c0ffce7f59ab3f3836d63c8a574ea /mysys/my_winthread.c
parent28a7d5042b264136438cb87e76498b8cbd583e7a (diff)
downloadmariadb-git-2bc1930c6c40b964fce9c698a1ca75da3138ad63.tar.gz
Windows improvements : manual backport of
htttp://lists.mysql.com/commits/50957?f=plain Always use TLS functions instead of __declspec(thread) to access thread local storage variables. The change removes the necessity to recomplile the same source files twice - with USE_TLS for DLLs and without USE_TLS for EXEs. Real benefit of this change is better readability and maintainability of TLS functions within MySQL. There is a performance loss using TlsXXX functions compared to __declspec but the difference is negligible in practice. In a sysbench-like benchmark I ran with with TlsGetValue, pthread_[get|set]_specific was called 600000000 times and took 0.17sec of total 35min CPU time, or 0.008%.
Diffstat (limited to 'mysys/my_winthread.c')
-rw-r--r--mysys/my_winthread.c7
1 files changed, 0 insertions, 7 deletions
diff --git a/mysys/my_winthread.c b/mysys/my_winthread.c
index e94369bec32..543e1787fb6 100644
--- a/mysys/my_winthread.c
+++ b/mysys/my_winthread.c
@@ -129,12 +129,5 @@ void pthread_exit(void *a)
_endthread();
}
-/* This is neaded to get the macro pthread_setspecific to work */
-
-int win_pthread_setspecific(void *a,void *b,uint length)
-{
- memcpy(a,b,length);
- return 0;
-}
#endif