summaryrefslogtreecommitdiffstats
path: root/include/scoreboard.h
diff options
context:
space:
mode:
authorBill Stoddard <stoddard@apache.org>2001-02-02 22:32:34 +0100
committerBill Stoddard <stoddard@apache.org>2001-02-02 22:32:34 +0100
commitb119ec0e6011966214b20aa66cc2f80681a5ee96 (patch)
treeed776fbd3c3953597bca49652b965d4cb16aa021 /include/scoreboard.h
parentShould consider APRizing the entire module. For now, use HAVE_TIMES (diff)
downloadapache2-b119ec0e6011966214b20aa66cc2f80681a5ee96.tar.xz
apache2-b119ec0e6011966214b20aa66cc2f80681a5ee96.zip
Begin restructuring scoreboard code to enable adding back in
the ability to use IPC other than shared memory. Get mod_status working on Windows again. Still to do: Rename some of the function APIs. Replace all calls to reinit_scoreboard with ap_create_scoreboard. Add back in support for scoreboard files. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87959 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'include/scoreboard.h')
-rw-r--r--include/scoreboard.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/include/scoreboard.h b/include/scoreboard.h
index 180fb73607..87047e9c2f 100644
--- a/include/scoreboard.h
+++ b/include/scoreboard.h
@@ -139,6 +139,14 @@ typedef unsigned vtime_t;
*/
typedef int ap_generation_t;
+/* Is the scoreboard shared between processes or not?
+ * Set by the MPM when the scoreboard is created.
+ */
+typedef enum {
+ SB_SHARED = 1,
+ SB_NOT_SHARED = 2
+} ap_scoreboard_e;
+
/* stuff which is thread/process specific */
typedef struct {
#ifdef OPTIMIZE_TIMEOUTS
@@ -168,6 +176,7 @@ typedef struct {
} short_score;
typedef struct {
+ ap_scoreboard_e sb_type;
ap_generation_t running_generation; /* the generation of children which
* should still be serving requests. */
} global_score;
@@ -211,12 +220,13 @@ typedef struct {
#endif
AP_DECLARE(int) ap_exists_scoreboard_image(void);
+AP_DECLARE(void) ap_create_scoreboard(apr_pool_t *p, ap_scoreboard_e t);
void reinit_scoreboard(apr_pool_t *p);
apr_status_t ap_cleanup_shared_mem(void *d);
AP_DECLARE(void) reopen_scoreboard(apr_pool_t *p);
-apr_inline void ap_sync_scoreboard_image(void);
+void ap_sync_scoreboard_image(void);
void increment_counts(int child_num, int thread_num, request_rec *r);
void update_scoreboard_global(void);
AP_DECLARE(int) find_child_by_pid(apr_proc_t *pid);