CMGDK r49-rc2
|
00001 # i f n d e f H G L _ M U L T I _ T H R E A D _ C O N D I T I O N _ V A R I A B L E _ I N C L U D E 00002 00003 # d e f i n e H G L _ M U L T I _ T H R E A D _ C O N D I T I O N _ V A R I A B L E _ I N C L U D E 00004 00005 00006 00007 n a m e s p a c e h g l 00008 00009 { 00010 00011 c l a s s T h r e a d M u t e x ; 00012 00013 c l a s s R W L o c k ; 00014 00015 00016 00017 / * * 00018 00019 * agNSϑ 00020 00021 * / 00022 00023 c l a s s C o n d V a r 00024 00025 { 00026 00027 p r o t e c t e d : 00028 00029 00030 00031 d o u b l e w a i t _ t i m e ; 00032 00033 00034 00035 p u b l i c : 00036 00037 00038 00039 C o n d V a r ( ) ; 00040 00041 v i r t u a l ~ C o n d V a r ( ) ; 00042 00043 00044 00045 b o o l W a i t ( T h r e a d M u t e x * , d o u b l e t i m e = 0 ) ; / / / < ʑ>ec[T h r e a d M u t e x (WagN&{TT͑e[v^~_gI{_, 0 h:y8lEN 00046 00047 b o o l W a i t ( R W L o c k * , d o u b l e t i m e = 0 , b o o l r e a d = f a l s e ) ; / / / < ʑ>ec[R W L o c k (WagN&{TT͑e[v^~_gI{_0ldkQpeN(WW i n d o w s 2 0 0 8 / V i s t a SfeHr,g-N/ecL i n u x / B S D Hr 00048 N/ec 00049 00050 00051 00052 v o i d S i g n a l ( ) ; 00053 00054 v o i d B r o a d c a s t ( ) ; 00055 00056 } ; / / c l a s s C o n d V a r 00057 00058 00059 00060 C o n d V a r * C r e a t e C o n d V a r ( ) ; / / / < R^agNSϑ 00061 00062 } / / n a m e s p a c e h g l 00063 00064 # e n d i f / / H G L _ M U L T I _ T H R E A D _ C O N D I T I O N _ V A R I A B L E _ I N C L U D E 00065 00066