OpenDNSSEC-enforcer
2.0.2
enforcer
src
daemon
worker.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2009 NLNet Labs. All rights reserved.
3
*
4
* Redistribution and use in source and binary forms, with or without
5
* modification, are permitted provided that the following conditions
6
* are met:
7
* 1. Redistributions of source code must retain the above copyright
8
* notice, this list of conditions and the following disclaimer.
9
* 2. Redistributions in binary form must reproduce the above copyright
10
* notice, this list of conditions and the following disclaimer in the
11
* documentation and/or other materials provided with the distribution.
12
*
13
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
14
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
15
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
17
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
19
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
21
* IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
22
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
23
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24
*
25
*/
26
32
#ifndef DAEMON_WORKER_H
33
#define DAEMON_WORKER_H
34
35
#include "
scheduler/task.h
"
36
#include "
db/db_connection.h
"
37
38
#include <time.h>
39
40
struct
engine_struct
;
41
42
typedef
struct
worker_struct
worker_type
;
43
struct
worker_struct
{
44
int
thread_num
;
45
pthread_t
thread_id
;
46
struct
engine_struct
*
engine
;
47
task_type
*
task
;
48
size_t
jobs_appointed
;
49
size_t
jobs_completed
;
50
size_t
jobs_failed
;
51
int
sleeping
;
52
int
waiting
;
53
int
need_to_exit
;
54
db_connection_t
*
dbconn
;
55
};
56
64
worker_type
*
worker_create
(
int
num);
65
71
void
worker_start
(
worker_type
* worker);
72
78
void
worker_cleanup
(
worker_type
* worker);
79
80
#endif
/* DAEMON_WORKER_H */
db_connection.h
worker_struct::waiting
int waiting
Definition:
worker.h:52
worker_struct::jobs_completed
size_t jobs_completed
Definition:
worker.h:49
task_struct
Definition:
task.h:59
worker_struct::jobs_appointed
size_t jobs_appointed
Definition:
worker.h:48
worker_struct
Definition:
worker.h:43
worker_struct::need_to_exit
int need_to_exit
Definition:
worker.h:53
worker_cleanup
void worker_cleanup(worker_type *worker)
Definition:
worker.c:131
worker_struct::engine
struct engine_struct * engine
Definition:
worker.h:46
worker_start
void worker_start(worker_type *worker)
Definition:
worker.c:99
worker_struct::jobs_failed
size_t jobs_failed
Definition:
worker.h:50
worker_struct::task
task_type * task
Definition:
worker.h:47
worker_struct::thread_id
pthread_t thread_id
Definition:
worker.h:45
worker_create
worker_type * worker_create(int num)
Definition:
worker.c:46
worker_struct::dbconn
db_connection_t * dbconn
Definition:
worker.h:54
task.h
engine_struct
Definition:
engine.h:52
worker_struct::thread_num
int thread_num
Definition:
worker.h:44
worker_struct::sleeping
int sleeping
Definition:
worker.h:51
db_connection
Definition:
db_connection.h:46
Generated by
1.8.12