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

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

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

ACE_Thread提供了對不同OS的線程調用的簡單包裝,通過一個通用的接口進行處理線程創(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()調用即可終止線程執(zhí)行。

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

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

4.掛起及恢復線程

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

5.等待線程結束

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

6.停止線程

在主函數(shù)中調用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ù),待線程結束后退出程序。


posted on 2009-07-28 16:05 老馬驛站 閱讀(394) 評論(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>
            欧美一区日韩一区| 久久精品午夜| 欧美日韩国产欧美日美国产精品| 亚洲电影专区| 欧美大香线蕉线伊人久久国产精品| 欧美一区视频在线| 国自产拍偷拍福利精品免费一| 久久国产毛片| 久久成人一区二区| 亚洲国产小视频在线观看| 欧美高清视频一区二区三区在线观看 | 国产日韩成人精品| 一区二区三区免费网站| 亚洲精品人人| 国产精品任我爽爆在线播放| 性色av一区二区三区红粉影视| 欧美亚洲自偷自偷| 91久久精品国产91性色tv| 99视频精品全部免费在线| 国产精品视频一区二区三区| 久久深夜福利免费观看| 久久综合99re88久久爱| 在线视频一区观看| 欧美一区网站| 99国产精品久久| 亚洲欧美一级二级三级| 亚洲国产一区二区视频| 夜夜精品视频一区二区| 黑人巨大精品欧美一区二区| 欧美华人在线视频| 国产欧美日韩高清| 欧美黄色小视频| 国产精品视频观看| 亚洲第一页自拍| 国产精品久久久久婷婷| 欧美a级一区| 国产精品爽黄69| 亚洲国产欧美一区| 国产日韩一区二区三区在线| 亚洲欧洲日本专区| 国产亚洲精品美女| 日韩午夜剧场| 在线成人av| 午夜日韩视频| 一区二区动漫| 免费视频最近日韩| 久久女同精品一区二区| 欧美日韩在线三级| 欧美激情日韩| 国产一区再线| 亚洲影院免费观看| 亚洲视频播放| 欧美日本乱大交xxxxx| 麻豆成人在线观看| 国产亚洲欧美一区| 欧美亚洲综合另类| 午夜精品久久久久久久久| 欧美精品一区在线| 欧美国产精品v| 在线观看日韩av| 欧美中日韩免费视频| 欧美在线观看视频在线| 国产精品毛片高清在线完整版| 日韩一级在线观看| 一区二区日韩精品| 欧美伦理影院| 亚洲精品久久久久久久久久久久久 | 久久国产福利国产秒拍| 欧美亚洲一级片| 国产精品综合色区在线观看| 亚洲一级免费视频| 久久国产精品久久久久久久久久| 国产精品久久久久久久一区探花 | 亚洲区一区二| 亚洲精品1234| 欧美国产一区二区三区激情无套| 欧美国产视频在线| 亚洲精选在线观看| 欧美片在线观看| 日韩视频永久免费| 亚洲免费视频一区二区| 国产精品免费看久久久香蕉| 亚洲午夜电影| 久久夜色精品国产欧美乱极品| 国产在线视频欧美一区二区三区| 久久激情婷婷| 亚洲国产成人精品久久久国产成人一区 | 国产精品久久久久一区二区三区| 亚洲福利在线观看| 在线一区二区三区四区| 欧美午夜性色大片在线观看| 亚洲免费中文字幕| 免费成人av| 一区二区三区精品视频| 国产精品美女久久久免费| 欧美一区二区三区婷婷月色 | 久久激情综合网| 欧美成人综合网站| 99精品国产一区二区青青牛奶| 欧美三级乱码| 久久久久久久成人| 日韩亚洲欧美一区| 久久精品视频亚洲| 亚洲日本电影在线| 国产精品夜夜嗨| 美女图片一区二区| 99精品欧美一区二区三区| 久久精品国产久精国产爱| 亚洲国产小视频| 国产精品一区二区久久| 欧美99久久| 亚洲一区二区三区影院| 欧美gay视频激情| 亚洲嫩草精品久久| 亚洲高清视频一区二区| 国产精品私人影院| 欧美精品一区二区三区久久久竹菊 | 久久午夜国产精品| 亚洲影院免费| 亚洲三级影片| 噜噜噜久久亚洲精品国产品小说| 亚洲午夜国产一区99re久久 | 一区二区三区亚洲| 国产精品稀缺呦系列在线| 欧美国产日韩一区二区在线观看 | 欧美成人精品h版在线观看| 亚洲性感美女99在线| 亚洲国产精品高清久久久| 国产色产综合产在线视频| 欧美激情精品久久久久久免费印度| 亚洲视频免费| 亚洲激情在线观看视频免费| 久久久久亚洲综合| 久久成人av少妇免费| 亚洲特级片在线| 一本久久综合亚洲鲁鲁| 91久久精品国产91久久性色| 在线电影院国产精品| 好看的日韩视频| 国产三级欧美三级| 国产模特精品视频久久久久| 欧美视频在线观看一区二区| 欧美国内亚洲| 欧美激情中文字幕一区二区| 另类国产ts人妖高潮视频| 久久久一区二区三区| 久久九九国产| 欧美一区二区私人影院日本 | 亚洲精品一区二区三区在线观看 | 亚洲免费av电影| 亚洲精品免费在线| 亚洲黄色有码视频| 亚洲成在人线av| 亚洲国产高清自拍| 亚洲精品乱码久久久久久久久 | 亚洲伦理在线观看| 亚洲精品影视| 亚洲网站啪啪| 欧美一区二区三区四区在线 | 亚洲国产欧美日韩| 亚洲免费观看| 亚洲一区二区av电影| 午夜精品影院| 久久女同互慰一区二区三区| 久久最新视频| 欧美另类一区二区三区| 国产精品sm| 国产亚洲精品久久久久久| …久久精品99久久香蕉国产| 最新成人av网站| 亚洲综合视频1区| 久久久久久久网站| 亚洲国产欧美一区二区三区同亚洲 | 久久成人羞羞网站| 欧美www在线| 一区二区三区四区五区视频| 亚洲欧美在线看| 久热精品在线视频| 欧美日本国产| 国产在线不卡| 99精品国产在热久久下载| 香蕉乱码成人久久天堂爱免费| 久久蜜桃精品| 日韩视频―中文字幕| 欧美影片第一页| 欧美日韩国产色站一区二区三区| 国产精品久久二区| 在线观看久久av| 亚洲综合三区| 亚洲电影免费观看高清完整版| 一区二区三区四区五区精品| 久久综合伊人77777麻豆| 国产精品久久久久永久免费观看 | 国产欧美精品国产国产专区| 尤物精品在线| 欧美伊人久久久久久久久影院| 欧美肥婆bbw| 久久国产欧美精品| 欧美系列精品| 91久久精品一区二区三区|