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

大龍的博客

常用鏈接

統(tǒng)計(jì)

最新評(píng)論

gethostbyname timeout --- 轉(zhuǎn)

總結(jié): 下面第一種方法經(jīng)過測(cè)試是可行的,第二種方法(多線程中使用)不能夠用信號(hào)中斷。

so , 對(duì)信號(hào)的使用要非常小心。



gethostbyname 是阻塞的, 非線程安全的,所以最好使用getaddrinfo , 它是線程安全的。

要給gethostbyname 設(shè)置一個(gè)超時(shí)值, 用信號(hào)(alarm)實(shí)現(xiàn)是不行的(目前項(xiàng)目嵌入式平臺(tái)上面測(cè)試不行) 。


下面是網(wǎng)上摘錄的解決該問題的方法, 對(duì)怎么繞過其他系統(tǒng)函數(shù)(無論是線程安全還是非安全的)也有很好的借鑒意義


Hello,

I need to add timeout to gethostbyname function in my program. I
googled and searched archives, found some examples with alert(), but
can't make it work :/ I would be grateful of someone could tell me how
to do it.

You can't. Or rather, you shouldn't.

The trick with alarm(2) (not alert()), is to longjmp(3) from the signal
handler to a context created with setjmp(3) before calling gethostbyname(3).
This is, unfortunately, very common in Perl code (in Perl die() actually
uses longjmp() internally to a context set from an eval statement).

However, gethostbyname() keeps internal state, and afterward its unsafe
to call the function again. gethostbyname_r() might be relatively safer,
but you've probably also leaked a file descriptor and memory,
meaning you could only do it so many times from a single process before it
won't work anymore. (And from a strict C perspective, jumping from the
signal handler itself is questionable.)

You do have options.

1) Multiple processes. Use child processes and the
gethostbyname()+alarm() trick, and return the answer down a pipe to
the parent. The child will just kill itself if it timeouts (or
alternatively the parent will set the alarm and kill the child), since it
cannot reliably do it's job afterward.

2) Use threads in conjunction with gethostbyname_r(), or preferably
getaddrinfo(3). Still, you cannot interrupt these functions within the
thread, and so you have a few more decisions to make in terms of how you
handle timeouts.

3) Use a third-party asynchronous DNS library: ADNS, C-Ares and UDNS are
the first ones which comes to mind, the former two probably being the most
popular.

posted on 2012-11-12 14:45 大龍 閱讀(3314) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲欧美乱综合| 欧美成人午夜视频| 中文国产成人精品久久一| 久久综合狠狠综合久久综合88| 一本到高清视频免费精品| 欧美日韩视频不卡| 亚洲欧美在线一区| 香蕉久久夜色精品| 一区二区三区在线看| 亚洲国产二区| 亚洲一区在线看| 国产免费成人在线视频| 美女成人午夜| 欧美日韩国产探花| 欧美在线短视频| 久久久999国产| 亚洲毛片一区二区| 午夜精品视频在线观看一区二区| 国产亚洲精品bt天堂精选| 欧美高清视频在线 | 欧美一区二区三区四区视频| 午夜免费久久久久| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲福利国产精品| 国产精品日韩一区二区三区| 亚洲欧洲日产国码二区| 99riav国产精品| 狠狠色丁香婷婷综合影院| 亚洲福利免费| 国产视频一区在线观看| 亚洲国产天堂久久综合网| 国产欧美日韩亚洲精品| 亚洲国产精品福利| 国产日韩欧美综合精品| 亚洲精品久久久久久久久| 国产三区二区一区久久 | 亚洲视频欧美在线| 欧美专区在线| 亚洲一区免费观看| 美女网站久久| 久久久久国产精品厨房| 欧美日韩一区二区三区在线观看免| 久久黄色影院| 欧美性理论片在线观看片免费| 蜜月aⅴ免费一区二区三区| 国产精品久久999| 亚洲欧洲三级| 亚洲福利视频二区| 欧美亚洲日本网站| 亚洲性色视频| 欧美看片网站| 91久久久在线| 亚洲国产精品黑人久久久| 先锋影院在线亚洲| 午夜在线一区| 欧美三区在线| 亚洲乱码一区二区| 亚洲伦伦在线| 欧美日本一道本| 亚洲人体一区| 亚洲理论在线观看| 欧美福利视频| 亚洲国产视频a| 亚洲国语精品自产拍在线观看| 欧美在线视频全部完| 久久精品99国产精品酒店日本| 国产精品久久久久免费a∨| 亚洲人线精品午夜| 国产精品99久久不卡二区| 欧美国产一区二区在线观看 | 欧美中文字幕久久| 国产精品一卡二卡| 亚洲欧美日韩国产成人| 欧美在线视频在线播放完整版免费观看 | 久久人91精品久久久久久不卡| 国产精品爽爽爽| 亚洲综合视频网| 久久aⅴ国产紧身牛仔裤| 国产欧美日韩精品丝袜高跟鞋| 亚洲免费网站| 麻豆91精品91久久久的内涵| 在线观看福利一区| 欧美成人网在线| 欧美一区影院| 一区二区自拍| 欧美国产日韩视频| 一区二区不卡在线视频 午夜欧美不卡'| 在线视频免费在线观看一区二区| 国产精品成人一区二区| 亚洲欧美日本视频在线观看| 久久久久久久欧美精品| 极品av少妇一区二区| 欧美电影专区| 一区二区三区精品视频在线观看| 欧美中文日韩| 亚洲日本成人| 国产精品呻吟| 免费视频一区二区三区在线观看| 亚洲人成亚洲人成在线观看| 亚洲综合三区| 亚洲福利视频一区| 国产精品激情| 久久综合激情| 亚洲永久字幕| 亚洲大黄网站| 久久成人亚洲| 一区二区福利| 伊人久久噜噜噜躁狠狠躁| 欧美精品久久一区| 久久久国产精品一区二区三区| 亚洲激情专区| 另类人畜视频在线| 欧美一区二区视频观看视频| 亚洲国产欧美一区二区三区丁香婷| 国产精品wwwwww| 欧美国产免费| 久久久精品tv| 亚洲免费人成在线视频观看| 亚洲欧洲精品一区二区三区| 久久阴道视频| 欧美一区午夜精品| 中文精品视频| 日韩网站在线看片你懂的| 国产亚洲一区二区精品| 国产精品超碰97尤物18| 欧美精品xxxxbbbb| 免播放器亚洲一区| 久久超碰97人人做人人爱| 亚洲色诱最新| 一本久久精品一区二区| 亚洲大黄网站| 亚洲第一在线视频| 美女被久久久| 美女精品在线观看| 久久久久国色av免费观看性色| 亚洲一区不卡| 一区二区三区精密机械公司| 亚洲精品麻豆| 亚洲精品日韩精品| 亚洲国产一区二区三区高清| 伊人久久亚洲热| 尤物yw午夜国产精品视频| 好看不卡的中文字幕| 国产麻豆精品久久一二三| 国产精品久久久久久久久久久久久| 欧美交受高潮1| 欧美乱大交xxxxx| 欧美体内she精视频在线观看| 欧美激情小视频| 欧美人与性动交cc0o| 欧美精品一区二区在线观看| 欧美高清影院| 欧美午夜精品久久久久久超碰| 欧美日韩免费一区| 国产精品久久九九| 国产欧美一区二区精品忘忧草| 国产日韩欧美高清| 伊人久久亚洲影院| 91久久黄色| 一区二区三区视频观看| 午夜精品久久久久久久白皮肤| 午夜一区不卡| 久久久在线视频| 久久久久久亚洲精品中文字幕 | 一区二区三区高清在线| 亚洲午夜精品久久| 欧美一区二视频| 美国成人直播| 欧美日韩国产综合网 | 欧美一区二视频| 另类亚洲自拍| 欧美日韩网址| 国产一区二区在线观看免费播放 | 亚洲精品系列| 亚洲人成网站在线观看播放| 亚洲深爱激情| 久久女同互慰一区二区三区| 欧美高清视频www夜色资源网| 亚洲精品日本| 香蕉久久国产| 欧美日本在线看| 国产欧美精品一区二区三区介绍| 伊人久久婷婷色综合98网| 一本大道久久a久久综合婷婷 | 日韩视频一区二区三区| 亚洲女人小视频在线观看| 久热爱精品视频线路一| 亚洲精品欧美日韩| 久久精品国产亚洲高清剧情介绍| 欧美91福利在线观看| 国产嫩草影院久久久久| 亚洲美女毛片| 毛片基地黄久久久久久天堂| 一卡二卡3卡四卡高清精品视频| 久久久久免费| 国产免费亚洲高清| 亚洲小视频在线观看| 亚洲二区精品| 久久精品国产77777蜜臀| 欧美日韩在线视频一区二区|