10 typedef CRITICAL_SECTION MyCriticalSection;
11 typedef std::list<MyCriticalSection*> CriticalSectionList;
12 typedef CriticalSectionList::iterator CriticalSectionID;
14 ////////////////////////////////////////////////////////////////////////////////
16 // Windows
\97p
\83X
\83\8c\83b
\83h
\83N
\83\89\83X
17 ////////////////////////////////////////////////////////////////////////////////
20 ////////////////////////////////////////////////////////////////////////////////
21 //
\83\81\83\93\83o
\95Ï
\90\94
22 ////////////////////////////////////////////////////////////////////////////////
24 // Windows
\97p
\83X
\83\8c\83b
\83h
\90§
\8cä
\97p
26 //
\83X
\83\8c\83b
\83h
\8aÖ
\90\94\83\8b\81[
\83v
\8aÇ
\97\9d\97p
28 //
\83X
\83\8c\83b
\83h
\91¶
\8dÝ
\8aÇ
\97\9d\97p
32 //
\83N
\83\8a\83e
\83B
\83J
\83\8b\83Z
\83N
\83V
\83\87\83\93\90§
\8cä
\97p
33 CriticalSectionList m_CriticalSectionList;
35 ////////////////////////////////////////////////////////////////////////////////
36 //
\83R
\83\93\83X
\83g
\83\89\83N
\83^
37 ////////////////////////////////////////////////////////////////////////////////
41 ////////////////////////////////////////////////////////////////////////////////
42 //
\83f
\83X
\83g
\83\89\83N
\83^
43 ////////////////////////////////////////////////////////////////////////////////
47 ////////////////////////////////////////////////////////////////////////////////
48 // static
\8aÖ
\90\94\81A
\83R
\81[
\83\8b\83o
\83b
\83N
\8aÖ
\90\94
49 ////////////////////////////////////////////////////////////////////////////////
51 static unsigned int __stdcall procThread(void* in_pParameter);
53 ////////////////////////////////////////////////////////////////////////////////
54 //
\91\80\8dì
\83\81\83\
\83b
\83h
55 ////////////////////////////////////////////////////////////////////////////////
57 //
\83X
\83^
\81[
\83g(DoLoop: true -
\8cJ
\82è
\95Ô
\82·, false -
\88ê
\89ñ
\82Ì
\82Ý, Flag:
\83X
\83\8c\83b
\83h
\82Ì
\90Ý
\92è)
58 virtual bool start(bool in_doLoop = false, UINT in_Flag = 0);
62 virtual UINT suspend();
63 //
\83X
\83\8c\83b
\83h
\8dÄ
\83X
\83^
\81[
\83g
64 virtual UINT resume();
66 //
\83X
\83\8c\83b
\83h
\83\8b\81[
\83v
70 //
\83N
\83\8a\83e
\83B
\83J
\83\8b\83Z
\83N
\83V
\83\87\83\93\90§
\8cäID
\82ð
\8eæ
\93¾
\82·
\82é
71 const CriticalSectionID createCriticalSectionID();
72 //
\83N
\83\8a\83e
\83B
\83J
\83\8b\83Z
\83N
\83V
\83\87\83\93\90§
\8cäID
\82ð
\8aJ
\95ú
\82·
\82é
73 void deleteCriticalSectionID(const CriticalSectionID in_CriticalSectionID);
74 //
\83N
\83\8a\83e
\83B
\83J
\83\8b\83Z
\83N
\83V
\83\87\83\93\82É
\93ü
\82é
75 void enterCriticalSectionID(const CriticalSectionID in_CriticalSectionID);
76 //
\83N
\83\8a\83e
\83B
\83J
\83\8b\83Z
\83N
\83V
\83\87\83\93\82©
\82ç
\8fo
\82é
77 void leaveCriticalSectionID(const CriticalSectionID in_CriticalSectionID);
80 ////////////////////////////////////////////////////////////////////////////////
81 //
\91®
\90«
\83\81\83\
\83b
\83h
82 ////////////////////////////////////////////////////////////////////////////////
84 //
\83v
\83\8d\83Z
\83X
\83v
\83\89\83C
\83I
\83\8a\83e
\83B
\82Ì
\90Ý
\92è
85 virtual UINT setPriorityClass(DWORD in_PriorityClass);
86 //
\97D
\90æ
\93x
\82Ì
\90Ý
\92è
87 virtual UINT setPriority(int in_Priority);
88 //
\97D
\90æ
\93x
\82ð
\8dÅ
\92á
\82É
\82·
\82é
89 virtual UINT setPriorityMinimum();
90 //
\97D
\90æ
\93x
\82ð
\8dÅ
\91å
\82É
\82·
\82é
91 virtual UINT setPriorityMaxisim();
93 ////////////////////////////////////////////////////////////////////////////////
94 //
\83C
\83e
\83\8c\81[
\83V
\83\87\83\93
95 ////////////////////////////////////////////////////////////////////////////////
96 ////////////////////////////////////////////////////////////////////////////////
98 ////////////////////////////////////////////////////////////////////////////////
100 //
\83X
\83\8c\83b
\83h
\82ª
\91¶
\8dÝ
\82·
\82é
\82©
\92²
\82×
\82é
101 virtual bool isExist();
103 ////////////////////////////////////////////////////////////////////////////////
105 ////////////////////////////////////////////////////////////////////////////////
106 ////////////////////////////////////////////////////////////////////////////////
107 //
\8f\83\90\88\89¼
\91z
\8aÖ
\90\94\81A
\92è
\8b`
\82Ì
\82Ý
\81i
\94ñ
\8eÀ
\91\95\92ñ
\8b\9f\81j
108 ////////////////////////////////////////////////////////////////////////////////
109 ////////////////////////////////////////////////////////////////////////////////
110 //
\93à
\95\94\83N
\83\89\83X
111 ////////////////////////////////////////////////////////////////////////////////