aboutsummaryrefslogtreecommitdiff
path: root/src/pkg
diff options
context:
space:
mode:
authorAlex Brainman <alex.brainman@gmail.com>2014-09-03 14:17:04 +1000
committerAlex Brainman <alex.brainman@gmail.com>2014-09-03 14:17:04 +1000
commit2c780a35b986dec270640115fb3f28a9e1affeaf (patch)
treed5114569991901f4a69b8f94893fe1fb483ce87d /src/pkg
parent9aa7d136f52928587a6bd2db320f4f4f2b6b0666 (diff)
downloadgo-2c780a35b986dec270640115fb3f28a9e1affeaf.tar.xz
runtime: increase windows prof thread priority sooner
If system is busy burning cpu, it takes long time (about 300ms on windows builders) to adjust prof thread priority. Once adjusted, prof thread runs ahead of everyone else, but due to initial slowness, it does not capture prof snapshots until start-up period is completed. Change prof thread priority sooner, so it can start captures straight away. LGTM=dvyukov R=golang-codereviews, dvyukov CC=golang-codereviews https://golang.org/cl/134360043
Diffstat (limited to 'src/pkg')
-rw-r--r--src/pkg/runtime/os_windows.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/pkg/runtime/os_windows.c b/src/pkg/runtime/os_windows.c
index 43026d6457..172fd92285 100644
--- a/src/pkg/runtime/os_windows.c
+++ b/src/pkg/runtime/os_windows.c
@@ -570,6 +570,7 @@ runtime·resetcpuprofiler(int32 hz)
runtime·atomicstorep(&profiletimer, timer);
thread = runtime·stdcall6(runtime·CreateThread,
(uintptr)nil, (uintptr)nil, (uintptr)runtime·profileloop, (uintptr)nil, (uintptr)nil, (uintptr)nil);
+ runtime·stdcall2(runtime·SetThreadPriority, (uintptr)thread, THREAD_PRIORITY_HIGHEST);
runtime·stdcall1(runtime·CloseHandle, (uintptr)thread);
}
runtime·unlock(&lock);