• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 16, 文章 - 0, 評論 - 55, 引用 - 0
            數據加載中……

            跨平臺的線程代碼

            改編自fltk,添加了linux平臺下的Sleep實現,只支持Windows和Linux,分別用vc和gcc編譯,代碼如下:

            1 //threads.h, LGPL
            2
            3 #ifndef Threads_H
            4 #define Threads_H
            5
            6 #ifdef WIN32
            7
            8 #include < windows.h >
            9 #include < process.h >
            10
            11 typedef unsigned long Fl_Thread;
            12
            13 static int fl_create_thread(Fl_Thread& t, void *(*f) (void *), void* p)
            14 {
            15 return t = (Fl_Thread)_beginthread((void( __cdecl * )( void * ))f, 0, p);
            16 }
            17
            18 #else
            19
            20 // Use POSIX threading...
            21 #include < pthread.h >
            22 #include < unistd.h >
            23
            24 typedef pthread_t Fl_Thread;
            25
            26 static int fl_create_thread(Fl_Thread& t, void *(*f) (void *), void* p)
            27 {
            28 return pthread_create((pthread_t*)&t, 0, f, p);
            29 }
            30
            31 static void Sleep(unsigned long dwMilliseconds)
            32 {
            33 usleep(dwMilliseconds * 1000);
            34 }
            35
            36 #endif
            37
            38 #endif // !Threads_h

            使用示例:

            1 #include "thread.h"
            2 ...
            3
            4 static Fl_Thread m_thread; // define
            5 ...
            6
            7 // thread create
            8 fl_create_thread(m_thread, thread_fun, 0);
            9 ...
            10
            11 static void* thread_fun(void *p)
            12 {
            13 while (1) {
            14 ...
            15 }
            16
            17 return 0;
            18 }

            posted on 2006-05-16 16:46 cyantree 閱讀(923) 評論(1)  編輯 收藏 引用

            評論

            # re: 跨平臺的線程代碼  回復  更多評論   

            Boost 也有支持的,快成標準了吧。
            2006-05-16 19:33 | Squirrel
            欧美激情精品久久久久久久九九九 | 久久99精品国产99久久| 综合久久给合久久狠狠狠97色| 超级碰久久免费公开视频| 久久久中文字幕日本| 欧美伊人久久大香线蕉综合| 久久精品国产免费观看| 亚洲伊人久久精品影院| 久久99国产精品久久| 国产精品九九久久免费视频| 伊人久久大香线蕉综合5g| 色综合久久中文字幕无码| 亚洲综合婷婷久久| 久久综合久久性久99毛片| 亚洲国产精品无码久久| 久久久久久久尹人综合网亚洲| 亚洲午夜福利精品久久| 91精品国产9l久久久久| 合区精品久久久中文字幕一区| 精品免费久久久久久久| 亚洲精品tv久久久久| 99精品久久精品一区二区| 亚洲欧美久久久久9999| 久久99精品国产自在现线小黄鸭| 热久久国产欧美一区二区精品| 精品久久无码中文字幕| 狠狠色噜噜色狠狠狠综合久久| 国产真实乱对白精彩久久| 久久久久亚洲AV无码网站| 人妻精品久久久久中文字幕| 久久婷婷久久一区二区三区| 久久亚洲精品国产精品| 中文字幕无码久久人妻| 国产精品美女久久久久AV福利| 久久精品中文字幕无码绿巨人| 国产精品久久久久免费a∨| 久久久久国产精品三级网| 色综合久久天天综合| 国产精品久久99| 72种姿势欧美久久久久大黄蕉| 日日躁夜夜躁狠狠久久AV|