Changeset 34 in libcf for trunk/include/cf_thread.h


Ignore:
Timestamp:
02/05/13 11:26:59 (11 years ago)
Author:
cheese
Message:

#1 add example code for doxygen

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/cf_thread.h

    r33 r34  
    55 *
    66 * @remark 멀티스레드 및 뮤텍스 지원
     7 *
     8 * @section 샘플코드
     9 * @code
     10
     11#include "cf_thread.h"
     12
     13CF_Mutex globalMutex;
     14
     15CF_THREAD_RETURN CF_THREAD_CALL worker (void * arg) {
     16    if (CF_Mutex_Create (&globalMutex) < 0) {
     17        // error
     18    }
     19
     20    if (CF_Mutex_Lock (&globalMutex) < 0) { // for critical section
     21        // error
     22    }
     23
     24    // critical section
     25
     26    if (CF_Mutex_Unlock (&globalMutex) < 0) { // for critical section
     27        // error
     28    }
     29
     30    if (CF_Mutex_Destory (&globalMutex) < 0) {
     31        // error
     32    }
     33}
     34
     35int main (void) {
     36    CF_Thread tid;
     37    if (CF_Thread_Create (&tid, worker, NULL) < 0) {
     38        // error
     39    }
     40
     41    if (CF_Thread_Join (&tid) < 0) { // block
     42        // error
     43    }
     44
     45    if (CF_Thread_Release (&tid) < 0) {
     46        // error
     47    }
     48    return 0;
     49}
     50
     51 * @endcode
    752 */
    853#ifndef __CF_THREAD_H__
     
    4691 * @param callback  스레드 워커 함수 이름
    4792 * @param arg       스레드 함수로 전달할 인자
    48  *
    49  * @code
    50 
    51 #include "cf_thread.h"
    52 
    53 CF_Mutex globalMutex;
    54 
    55 CF_THREAD_RETURN CF_THREAD_CALL worker (void * arg) {
    56     if (CF_Mutex_Create (&globalMutex) < 0) {
    57         // error
    58     }
    59 
    60     if (CF_Mutex_Lock (&globalMutex) < 0) { // for critical section
    61         // error
    62     }
    63 
    64     // critical section
    65 
    66     if (CF_Mutex_Unlock (&globalMutex) < 0) { // for critical section
    67         // error
    68     }
    69 
    70     if (CF_Mutex_Destory (&globalMutex) < 0) {
    71         // error
    72     }
    73 }
    74 
    75 int main (void) {
    76     CF_Thread tid;
    77     if (CF_Thread_Create (&tid, worker, NULL) < 0) {
    78         // error
    79     }
    80 
    81     if (CF_Thread_Join (&tid) < 0) { // block
    82         // error
    83     }
    84 
    85     if (CF_Thread_Release (&tid) < 0) {
    86         // error
    87     }
    88 }
    89 
    90  * @endcode
    9193 */
    9294CF_EXPORT int
Note: See TracChangeset for help on using the changeset viewer.