aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2014-03-25 18:00:37 +0200
committerEli Zaretskii2014-03-25 18:00:37 +0200
commitdefd53bdc5ef9d75fa112487d76f4d7a4cb9fe92 (patch)
tree74a6ded6b17e777ad30256887d54ef0d17a7287c
parent1e952f0a7a1d0cc533438dcad37db08d8af6855f (diff)
downloademacs-defd53bdc5ef9d75fa112487d76f4d7a4cb9fe92.tar.gz
emacs-defd53bdc5ef9d75fa112487d76f4d7a4cb9fe92.zip
Speed up thread startup on MS-Windows.
src/w32.c (w32_delayed_load): Call DisableThreadLibraryCalls on the DLL handle, to speed up thread startup.
-rw-r--r--src/ChangeLog5
-rw-r--r--src/w32.c7
2 files changed, 12 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 44ebe76555c..31d90663206 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12014-03-25 Eli Zaretskii <eliz@gnu.org>
2
3 * w32.c (w32_delayed_load): Call DisableThreadLibraryCalls on the
4 DLL handle, to speed up thread startup.
5
12014-03-25 Paul Eggert <eggert@cs.ucla.edu> 62014-03-25 Paul Eggert <eggert@cs.ucla.edu>
2 7
3 Handle sigmask better with nested signal handlers (Bug#15561). 8 Handle sigmask better with nested signal handlers (Bug#15561).
diff --git a/src/w32.c b/src/w32.c
index 8802e13e71d..1ffb6ec171f 100644
--- a/src/w32.c
+++ b/src/w32.c
@@ -8702,6 +8702,13 @@ w32_delayed_load (Lisp_Object library_id)
8702 /* Possibly truncated */ 8702 /* Possibly truncated */
8703 ? make_specified_string (name, -1, len, 1) 8703 ? make_specified_string (name, -1, len, 1)
8704 : Qnil); 8704 : Qnil);
8705 /* This prevents thread start and end notifications
8706 from being sent to the DLL, for every thread we
8707 start. We don't need those notifications because
8708 threads we create never use any of these DLLs, only
8709 the main thread uses them. This is supposed to
8710 speed up thread creation. */
8711 DisableThreadLibraryCalls (dll_handle);
8705 break; 8712 break;
8706 } 8713 }
8707 } 8714 }