summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorTom Lane2005-10-25 15:15:16 +0000
committerTom Lane2005-10-25 15:15:16 +0000
commit25777f6fd312b3f3e32edb921d79e3d8c7b499a6 (patch)
treed69976608fc3d97df70ed1f50a944f4e1a2ec036 /src/include
parentb83547201fb321bca43276911d6839ab7ad7e7f7 (diff)
Fix Windows setitimer() emulation to not depend on delivering an APC
to the main thread. This allows removal of WaitForSingleObjectEx() calls from the main thread, thereby allowing us to re-enable Qingqing Zhou's CHECK_FOR_INTERRUPTS performance improvement. Qingqing, Magnus, et al.
Diffstat (limited to 'src/include')
-rw-r--r--src/include/miscadmin.h5
-rw-r--r--src/include/port/win32.h3
2 files changed, 4 insertions, 4 deletions
diff --git a/src/include/miscadmin.h b/src/include/miscadmin.h
index f82fffed77..fc13891e41 100644
--- a/src/include/miscadmin.h
+++ b/src/include/miscadmin.h
@@ -13,7 +13,7 @@
* Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/miscadmin.h,v 1.182 2005/10/22 17:09:48 tgl Exp $
+ * $PostgreSQL: pgsql/src/include/miscadmin.h,v 1.183 2005/10/25 15:15:16 tgl Exp $
*
* NOTES
* some of the information in this file should be moved to other files.
@@ -88,7 +88,8 @@ do { \
#define CHECK_FOR_INTERRUPTS() \
do { \
- pgwin32_check_queued_signals(); \
+ if (UNBLOCKED_SIGNAL_QUEUE()) \
+ pgwin32_dispatch_queued_signals(); \
if (InterruptPending) \
ProcessInterrupts(); \
} while(0)
diff --git a/src/include/port/win32.h b/src/include/port/win32.h
index 9d1a6da6c6..5bf6ce208f 100644
--- a/src/include/port/win32.h
+++ b/src/include/port/win32.h
@@ -1,4 +1,4 @@
-/* $PostgreSQL: pgsql/src/include/port/win32.h,v 1.48 2005/10/21 21:43:46 tgl Exp $ */
+/* $PostgreSQL: pgsql/src/include/port/win32.h,v 1.49 2005/10/25 15:15:16 tgl Exp $ */
/* undefine and redefine after #include */
#undef mkdir
@@ -224,7 +224,6 @@ extern HANDLE pgwin32_initial_signal_pipe;
void pgwin32_signal_initialize(void);
HANDLE pgwin32_create_signal_listener(pid_t pid);
-void pgwin32_check_queued_signals(void);
void pgwin32_dispatch_queued_signals(void);
void pg_queue_signal(int signum);