]> git.saurik.com Git - wxWidgets.git/blobdiff - tests/benchmarks/tls.cpp
Removed dummy wxFont == operator implementation (IIRC was needed to compile with...
[wxWidgets.git] / tests / benchmarks / tls.cpp
index 213d3e87df6301ced8169a8bab39e8e7e2549ae5..b187566c17d85184b72d7273bb76f012da37bf55 100644 (file)
@@ -10,6 +10,8 @@
 
 #include "bench.h"
 
+#include "wx/tls.h"
+
 #if defined(__UNIX__)
     #define HAVE_PTHREAD
     #include <pthread.h>
@@ -28,7 +30,7 @@
 
 // uncomment this to also test Boost version (you will also need to link with
 // libboost_threads)
-#define HAVE_BOOST_THREAD
+//#define HAVE_BOOST_THREAD
 #ifdef HAVE_BOOST_THREAD
     #include <boost/thread/tss.hpp>
 #endif
@@ -171,3 +173,19 @@ BENCHMARK_FUNC(BoostTLS)
 }
 
 #endif // HAVE_BOOST_THREAD
+
+BENCHMARK_FUNC(wxTLS)
+{
+    static wxTLS_TYPE(int) s_globalVar;
+    #define s_global wxTLS_VALUE(s_globalVar)
+
+    for ( int n = 0; n < NUM_ITER; n++ )
+    {
+        if ( n % 2 )
+            s_global = 0;
+        else
+            s_global = n;
+    }
+
+    return !s_global;
+}