CMGDK r49-rc2
K:/CMGDKv18/SDK/Source/SQL/MySQL/include/my_alarm.h
浏览该文件的文档。
00001 / *   C o p y r i g h t   ( C )   2 0 0 0   M y S Q L   A B 
00002  
00003        T h i s   p r o g r a m   i s   f r e e   s o f t w a r e ;   y o u   c a n   r e d i s t r i b u t e   i t   a n d / o r   m o d i f y 
00004  
00005        i t   u n d e r   t h e   t e r m s   o f   t h e   G N U   G e n e r a l   P u b l i c   L i c e n s e   a s   p u b l i s h e d   b y 
00006  
00007        t h e   F r e e   S o f t w a r e   F o u n d a t i o n ;   v e r s i o n   2   o f   t h e   L i c e n s e . 
00008  
00009        T h i s   p r o g r a m   i s   d i s t r i b u t e d   i n   t h e   h o p e   t h a t   i t   w i l l   b e   u s e f u l , 
00010  
00011        b u t   W I T H O U T   A N Y   W A R R A N T Y ;   w i t h o u t   e v e n   t h e   i m p l i e d   w a r r a n t y   o f 
00012  
00013        M E R C H A N T A B I L I T Y   o r   F I T N E S S   F O R   A   P A R T I C U L A R   P U R P O S E .     S e e   t h e 
00014  
00015        G N U   G e n e r a l   P u b l i c   L i c e n s e   f o r   m o r e   d e t a i l s . 
00016  
00017        Y o u   s h o u l d   h a v e   r e c e i v e d   a   c o p y   o f   t h e   G N U   G e n e r a l   P u b l i c   L i c e n s e 
00018  
00019        a l o n g   w i t h   t h i s   p r o g r a m ;   i f   n o t ,   w r i t e   t o   t h e   F r e e   S o f t w a r e 
00020  
00021        F o u n d a t i o n ,   I n c . ,   5 9   T e m p l e   P l a c e ,   S u i t e   3 3 0 ,   B o s t o n ,   M A     0 2 1 1 1 - 1 3 0 7     U S A   * / 
00022  
00023  / * 
00024  
00025      F i l e   t o   i n c l u d e   w h e n   w e   w a n t   t o   u s e   a l a r m   o r   a   l o o p _ c o u n t e r   t o   d i s p l a y 
00026  
00027      s o m e   i n f o r m a t i o n   w h e n   a   p r o g r a m   i s   r u n n i n g 
00028  
00029  * / 
00030  
00031  # i f n d e f   _ m y _ a l a r m _ h 
00032  
00033  # d e f i n e   _ m y _ a l a r m _ h 
00034  
00035  # i f d e f     _ _ c p l u s p l u s 
00036  
00037  e x t e r n   " C "   { 
00038  
00039  # e n d i f 
00040  
00041  e x t e r n   i n t   v o l a t i l e   m y _ h a v e _ g o t _ a l a r m ; 
00042  
00043  e x t e r n   u l o n g   m y _ t i m e _ t o _ w a i t _ f o r _ l o c k ; 
00044  
00045  # i f   d e f i n e d ( H A V E _ A L A R M )   & &   ! d e f i n e d ( N O _ A L A R M _ L O O P ) 
00046  
00047  # i n c l u d e   < s i g n a l . h > 
00048  
00049  # d e f i n e   A L A R M _ V A R I A B L E S   u i n t   a l a r m _ o l d = 0 ;   \ 
00050  
00051              s i g _ r e t u r n   a l a r m _ s i g n a l = 0 
00052  
00053  # d e f i n e   A L A R M _ I N I T     m y _ h a v e _ g o t _ a l a r m = 0   ;   \ 
00054  
00055              a l a r m _ o l d = ( u i n t )   a l a r m ( M Y _ H O W _ O F T E N _ T O _ A L A R M ) ;   \ 
00056  
00057              a l a r m _ s i g n a l = s i g n a l ( S I G A L R M , m y _ s e t _ a l a r m _ v a r i a b l e ) ; 
00058  
00059  # d e f i n e   A L A R M _ E N D   ( v o i d )   s i g n a l ( S I G A L R M , a l a r m _ s i g n a l ) ;   \ 
00060  
00061              ( v o i d )   a l a r m ( a l a r m _ o l d ) ; 
00062  
00063  # d e f i n e   A L A R M _ T E S T     m y _ h a v e _ g o t _ a l a r m 
00064  
00065  # i f d e f   D O N T _ R E M E M B E R _ S I G N A L 
00066  
00067  # d e f i n e   A L A R M _ R E I N I T     ( v o i d )   a l a r m ( M Y _ H O W _ O F T E N _ T O _ A L A R M ) ;   \ 
00068  
00069              ( v o i d )   s i g n a l ( S I G A L R M , m y _ s e t _ a l a r m _ v a r i a b l e ) ; \ 
00070  
00071              m y _ h a v e _ g o t _ a l a r m = 0 ; 
00072  
00073  # e l s e 
00074  
00075  # d e f i n e   A L A R M _ R E I N I T     ( v o i d )   a l a r m ( ( u i n t )   M Y _ H O W _ O F T E N _ T O _ A L A R M ) ;   \ 
00076  
00077              m y _ h a v e _ g o t _ a l a r m = 0 ; 
00078  
00079  # e n d i f   / *   D O N T _ R E M E M B E R _ S I G N A L   * / 
00080  
00081  # e l s e 
00082  
00083  # d e f i n e   A L A R M _ V A R I A B L E S   l o n g   a l a r m _ p o s = 0 , a l a r m _ e n d _ p o s = M Y _ H O W _ O F T E N _ T O _ W R I T E - 1 
00084  
00085  # d e f i n e   A L A R M _ I N I T 
00086  
00087  # d e f i n e   A L A R M _ E N D 
00088  
00089  # d e f i n e   A L A R M _ T E S T   ( a l a r m _ p o s + +   > =   a l a r m _ e n d _ p o s ) 
00090  
00091  # d e f i n e   A L A R M _ R E I N I T   a l a r m _ e n d _ p o s + = M Y _ H O W _ O F T E N _ T O _ W R I T E 
00092  
00093  # e n d i f   / *   H A V E _ A L A R M   * / 
00094  
00095  # i f d e f     _ _ c p l u s p l u s 
00096  
00097  } 
00098  
00099  # e n d i f 
00100  
00101  # e n d i f 
00102  
00103  
 全部  名字空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义