CMGDK r49-rc2
|
00001 # i f n d e f H G L _ R W L O C K _ I N C L U D E 00002 00003 # d e f i n e H G L _ R W L O C K _ 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 / * * 00012 00013 * Q/ qQN 00014 00015 * / 00016 00017 c l a s s R W L o c k / / / Q/ qQN 00018 00019 { 00020 00021 p u b l i c : 00022 00023 00024 00025 v i r t u a l ~ R W L o c k ( ) { } 00026 00027 00028 00029 v i r t u a l v o i d * G e t R W L o c k ( ) = 0 ; 00030 00031 00032 00033 v i r t u a l b o o l T r y R e a d L o c k ( ) = 0 ; / / / < \Ջ( qQN) [ 00034 00035 v i r t u a l v o i d R e a d L o c k ( ) = 0 ; / / / < ( qQN) [ 00036 00037 v i r t u a l v o i d R e a d U n l o c k ( ) = 0 ; / / / < ( qQN) 00038 00039 00040 00041 v i r t u a l b o o l T r y W r i t e L o c k ( ) = 0 ; / / / < \ՋQ( r`S) [ 00042 00043 v i r t u a l v o i d W r i t e L o c k ( ) = 0 ; / / / < Q( r`S) [ 00044 00045 v i r t u a l v o i d W r i t e U n l o c k ( ) = 0 ; / / / < Q( r`S) 00046 00047 } ; / / c l a s s R W L o c k 00048 00049 00050 00051 R W L o c k * C r e a t e R W L o c k ( ) ; / / / < R^Q 00052 00053 00054 00055 # d e f i n e H G L _ R W L O C K ( l o c k ) v o i d R e a d L o c k ( ) { l o c k - > R e a d L o c k ( ) ; } \ 00056 00057 v o i d W r i t e L o c k ( ) { l o c k - > W r i t e L o c k ( ) ; } \ 00058 00059 b o o l T r y R e a d L o c k ( ) { r e t u r n l o c k - > T r y R e a d L o c k ( ) ; } \ 00060 00061 b o o l T r y W r i t e L o c k ( ) { r e t u r n l o c k - > T r y W r i t e L o c k ( ) ; } \ 00062 00063 v o i d R e a d U n l o c k ( ) { l o c k - > R e a d U n l o c k ( ) ; } \ 00064 00065 v o i d W r i t e U n l o c k ( ) { l o c k - > W r i t e U n l o c k ( ) ; } 00066 00067 } / / n a m e s p a c e h g l 00068 00069 # e n d i f / / H G L _ R W L O C K _ I N C L U D E 00070 00071