Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
59 lines (46 loc) · 1.23 KB

File metadata and controls

59 lines (46 loc) · 1.23 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/*
* ThreadQueue.h
*
*/
#ifndef PROCESSOR_THREADQUEUE_H_
#define PROCESSOR_THREADQUEUE_H_
#include "ThreadJob.h"
#include "ThreadStats.h"
#include "Tools/NamedStats.h"
class ThreadQueue
{
WaitQueue<ThreadJob> in, out;
Lock lock;
int left;
ThreadStats thread_stats;
TimerWithComm timer, online_timer, online_prep_timer;
Timer inside_wait_timer;
bool debug;
public:
static thread_local ThreadQueue* thread_queue;
map<string, TimerWithComm> timers;
Timer wait_timer;
NamedStats stats;
ThreadQueue() :
left(0), debug(false)
{
}
bool available()
{
return left == 0;
}
void schedule(const ThreadJob& job);
ThreadJob next();
void finished(const ThreadJob& job);
void finished(const ThreadJob& job, const ThreadStats& thread_stats,
const NamedStats& stats = {});
ThreadJob result();
NamedCommStats get_comm_stats();
void set_stats(const ThreadStats& new_stats);
ThreadStats get_stats();
void start_timer();
void stop_timer(Player& P);
void start_online(Player& P, const TimerWithComm& prep_time);
void stop_online(Player& P, const TimerWithComm& prep_time);
};
#endif /* PROCESSOR_THREADQUEUE_H_ */
Morty Proxy This is a proxified and sanitized view of the page, visit original site.