青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-167  評論-8  文章-0  trackbacks-0

有過在不同的操作系統(tǒng)下用c++進行過多線程編程的朋友對那些線程處理的API可能深有體會,這些API提供了相同或是相似的功能,但是它們的API的差別卻極為懸殊,十分令人頭痛。

ACE_Thread提供了對不同OS的線程調(diào)用的簡單包裝,通過一個通用的接口進行處理線程創(chuàng)建、掛起、取消和刪除等問題。

一. 線程入口函數(shù)

所有線程必須從一個指定的函數(shù)開始執(zhí)行,該函數(shù)稱為線程函數(shù),它必須具有下列原型:
void* worker(void *arg) {}
該函數(shù)輸入一個void *型的參數(shù),可以在創(chuàng)建線程時傳入。
注意:所有的線程啟動函數(shù)(方法)必須是靜態(tài)的或全局的(就如同直接使用OS線程API時所要求的一樣)。

二.線程基本操作

1.創(chuàng)建一個線程

一個進程的主線程是由操作系統(tǒng)自動生成,如果你要讓一個主線程創(chuàng)建額外的線程,可以通過ACE_Thread::spawn()實現(xiàn),該函數(shù)一般的使用方式如下:

    ACE_thread_t threadId;
    ACE_hthread_t threadHandle;

    ACE_Thread::spawn(
        (ACE_THR_FUNC)worker,        //線程執(zhí)行函數(shù)
        NULL,                        //執(zhí)行函數(shù)參數(shù)
        THR_JOINABLE | THR_NEW_LWP,
        &threadId,
        &threadHandle
        );

為了簡化,也可以使用其默認參數(shù),直接使用ACE_Thread::spawn((ACE_THR_FUNC)worker) 來創(chuàng)建一個worker的線程。

另外,ACE還提供了ACE_Thread::spawn_n函數(shù)來創(chuàng)建多個線程。

2.終止線程

在線程函數(shù)體中ACE_Thread::exit()調(diào)用即可終止線程執(zhí)行。

3.設(shè)定線程的相對優(yōu)先級

當一個線程被首次創(chuàng)建時,它的優(yōu)先級等同于它所屬進程的優(yōu)先級。一個線程的優(yōu)先級是相對于其所屬的進程的優(yōu)先級而言的。可以通過調(diào)用ACE_Thread::setprio函數(shù)改變線程的相對優(yōu)先級,該函數(shù)的調(diào)用方式如下:
ACE_Thread::setprio(threadHandle,ACE_DEFAULT_THREAD_PRIORITY)

4.掛起及恢復(fù)線程

掛起線程可以通過來實現(xiàn),它能暫停一個線程的執(zhí)行,其調(diào)用方式如下ACE_Thread::suspend(threadHandle) 。
相應(yīng)的,可以通過ACE_Thread::resume(threadHandle) 恢復(fù)被掛起的線程的執(zhí)行。

5.等待線程結(jié)束

在主函數(shù)中調(diào)用ACE_Thread::join(threadHandle)可阻塞主函數(shù),直道線程結(jié)束才能繼續(xù)執(zhí)行。

6.停止線程

在主函數(shù)中調(diào)用ACE_Thread::cancel (threadHandle)可停止線程的執(zhí)行(在Unix底下可以,而在windows下好像不起作用,有待檢驗)。

三.程序示例

下面例子演示了如何用ace創(chuàng)建一個線程。

#include "ace/Thread.h"
#include "ace/Synch.h"

#include <iostream>
using namespace std;

void* worker(void *arg)
{
    for(int i=0;i<10;i++)
    {
        ACE_OS::sleep(1);
        cout<<endl<<"hello world"<<endl;
    }
    return NULL;
}

int main(int argc, char *argv[])
{
    ACE_thread_t threadId;
    ACE_hthread_t threadHandle;

    ACE_Thread::spawn(
        (ACE_THR_FUNC)worker,        //線程執(zhí)行函數(shù)
        NULL,                        //執(zhí)行函數(shù)參數(shù)
        THR_JOINABLE | THR_NEW_LWP,
        &threadId,
        &threadHandle
        );
    
    ACE_Thread::join(threadHandle);

    return 0;
}

在這個簡單的例子中,創(chuàng)建了1個工作者線程,執(zhí)行程序中定義的worker()函數(shù)。然后阻塞主函數(shù),待線程結(jié)束后退出程序。


posted on 2009-07-28 16:05 老馬驛站 閱讀(392) 評論(0)  編輯 收藏 引用 所屬分類: ACE
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久视频这里只有精品| 亚洲精品网址在线观看| 欧美成人午夜| 欧美激情综合在线| 欧美成人免费小视频| 欧美激情片在线观看| 欧美午夜在线视频| 国产亚洲午夜高清国产拍精品| 国产中文一区| 亚洲欧洲一区二区在线观看 | 亚洲男人第一网站| 小黄鸭精品密入口导航| 久久综合综合久久综合| 欧美精品成人一区二区在线观看 | 欧美一区视频| 美女日韩欧美| 国产精品久久久久77777| 国内精品久久久久久影视8| 亚洲国产高清自拍| 亚洲欧美日韩国产一区二区三区| 久久―日本道色综合久久| 亚洲国产精品va| 一本久久知道综合久久| 欧美在线观看你懂的| 欧美另类在线播放| 国内在线观看一区二区三区| 一本久道久久综合婷婷鲸鱼| 久久久一区二区三区| 日韩香蕉视频| 美日韩在线观看| 国产麻豆视频精品| av成人动漫| 奶水喷射视频一区| 欧美国产日本高清在线| 欧美一区二区高清在线观看| 欧美精品久久一区二区| 国产亚洲精品资源在线26u| avtt综合网| 亚洲高清资源| 久久综合狠狠综合久久综合88| 国产精品毛片| 亚洲性图久久| 亚洲人成77777在线观看网| 久久免费视频观看| 狠狠爱成人网| 久久久欧美精品sm网站| 亚洲一二三区在线观看| 欧美日本三区| 亚洲精品一区二区三区在线观看| 久久精品视频免费| 午夜精品影院| 国产欧美一级| 久久av资源网站| 亚洲欧美第一页| 国产乱码精品一区二区三区忘忧草| 亚洲一区二三| 亚洲一区二区免费在线| 欧美午夜宅男影院| 在线亚洲一区| 国产精品99久久99久久久二8| 欧美日韩免费一区二区三区| 一区二区三区国产| 亚洲精品美女免费| 欧美日韩中文在线| 亚洲欧美激情四射在线日 | 原创国产精品91| 免费成人激情视频| 欧美91大片| 一区二区三区鲁丝不卡| 99精品视频一区二区三区| 欧美午夜在线观看| 欧美在现视频| 老司机aⅴ在线精品导航| 91久久香蕉国产日韩欧美9色| 欧美激情在线观看| 欧美日韩一区在线视频| 欧美在线亚洲综合一区| 久久久久久高潮国产精品视| 亚洲精选中文字幕| 亚洲一区二区三区精品视频| 国产噜噜噜噜噜久久久久久久久| 久久久久久久久综合| 美女黄网久久| 午夜宅男欧美| 久久综合狠狠综合久久激情| 日韩一级精品| 欧美一级片在线播放| 在线精品国精品国产尤物884a| 亚洲高清不卡一区| 欧美激情一区二区三区成人| 亚洲精品美女在线| 国产欧美另类| 亚洲第一区在线观看| 国产精品免费福利| 欧美成人中文| 国产精品jizz在线观看美国| 久久久久**毛片大全| 欧美激情一区二区在线 | 国产精品乱码久久久久久| 久久精品国产综合| 欧美日韩mp4| 裸体丰满少妇做受久久99精品| 欧美精品福利| 免费亚洲一区二区| 国产色视频一区| 在线一区视频| 亚洲美女精品成人在线视频| 午夜精品偷拍| 亚洲一区激情| 欧美成人官网二区| 久久久久久久波多野高潮日日| 欧美日本在线视频| 免费成人av| 国产日韩欧美在线播放| 日韩亚洲欧美中文三级| 亚洲精美视频| 久久久999| 久久精品国产欧美亚洲人人爽| 欧美视频在线观看| 亚洲国产日韩在线一区模特| 黄色另类av| 欧美伊人久久大香线蕉综合69| 亚洲一区二区不卡免费| 欧美激情国产高清| 亚洲国产成人精品女人久久久| 国外成人性视频| 性视频1819p久久| 久久国产精品99国产| 国产精品毛片| 亚洲一区二区精品在线观看| 亚洲一区久久| 欧美三级在线视频| 99国产精品一区| 亚洲午夜电影| 国产精品免费在线 | 亚洲欧美久久久| 午夜影视日本亚洲欧洲精品| 国产精品久久久久9999吃药| 亚洲午夜日本在线观看| 性做久久久久久久久| 国产伦精品一区二区三区高清版| 亚洲在线观看免费视频| 欧美一区二区三区播放老司机| 国产精品一区二区久久久| 亚洲欧美视频一区| 久久国产欧美| 在线日韩中文字幕| 欧美成人精品在线视频| 日韩视频一区二区三区在线播放 | 在线观看欧美成人| 亚洲日本免费| 欧美激情第4页| 一本到高清视频免费精品| 亚洲一区激情| 黄色成人av网| 欧美成人国产一区二区| 亚洲人午夜精品| 亚洲一区日本| 狠狠色噜噜狠狠狠狠色吗综合| 久久久精品久久久久| 欧美成人69| 一区二区三区精品| 国产欧美一区二区精品性色| 久久综合国产精品台湾中文娱乐网| 亚洲日韩欧美视频一区| 欧美一区三区二区在线观看| 国内一区二区三区| 暖暖成人免费视频| 亚洲图片欧洲图片av| 男人插女人欧美| 亚洲一级免费视频| 国语自产精品视频在线看一大j8| 男人的天堂成人在线| 亚洲一区二区三区精品动漫| 欧美成人dvd在线视频| 午夜伦欧美伦电影理论片| 有码中文亚洲精品| 欧美午夜一区二区三区免费大片 | 99一区二区| 国产视频在线观看一区| 欧美xx69| 午夜视黄欧洲亚洲| 亚洲美女尤物影院| 欧美a级片网| 久久爱另类一区二区小说| 99视频国产精品免费观看| 激情久久五月天| 国产精品你懂的在线欣赏| 欧美国产极速在线| 久久久久国色av免费看影院| 亚洲午夜在线观看视频在线| 亚洲国产成人不卡| 久久亚洲高清| 欧美一区深夜视频| 亚洲欧美国产制服动漫| 亚洲性色视频| 亚洲一区二区免费看| 亚洲三级影院| 亚洲激情第一区| 亚洲成色最大综合在线|