欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

與64位機的第一次親密接觸

系統 1850 0

今天陽光明媚,我與64位有個約會。

約會內容 如下:

與64位機的第一次親密接觸

首先,main中創建producer和consumer兩個線程,然后等待兩個線程執行完畢。

理論上講,屏幕上依次會輸出


Point 1
Point 2
Point 3

Unfortunately,代碼在打印出Point 2后Segment Fault Core掉了,我將兩個pthraed_join()交換位置,變成下面的樣子:

fprintf(stderr,"Point 2/n");
pthread_join(consumer, (void *)&result);

fprintf(stderr, "Point 1/n");
pthread_join(producer, (void *)&result);

這次居然沒有core。。。莫非,pthread_join和pthread_create還有順序對應關系?不應該呀!man pthread_join看了下,沒有相關注意事項,那么,有點囧了……

考慮到我是在實驗室,莫非……莫非……于是在代碼前面加了這么一句:

printf("int size: %d, void* size:%d/n", sizeof(int), sizeof(void*));

shit!輸出為:

int size: 4

void* size: 8

囧,問題找到~ 原來這是個64位機器,int 和pointer的大小不一樣了。

堆棧Layout如下:

main args Hi

pthread_t producer
pthread_t consumer
intresult Lo

第一個pthread_join會向result所在的堆棧處寫數據(這里為全0),數據長度為8字節,于是乎,consumer的內容被破壞了,后面的pthread_join使用的consumer指針也就變成非法了。core之~~

如何避免這個問題呢? 最自然的方法就是改變result的定義:

long result;

long和void*都是占8字節。

還有個搞著玩的方法 ,僅僅這段代碼中適用,那就是改變consumer和producer的定義順序:

pthread_t consumer;

pthread_t producer;
為什么呢?調用pthread_join()等待producer,返回后producer的內容會被result覆蓋掉,恰好producer再也不會被使用了,壞了也就壞了。但是consumer還健在,下一個pthread_join照常執行。經過驗證,OK~ 這個道理跟上面交換兩個pthread_join的順序是相通的。

----

我養的太陽花還沒見發芽,然而那一盆土上已經長出了五顏六色的草兒,每天清晨趴在床頭看一看,也是十分的賞心悅目呢~~

與64位機的第一次親密接觸


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 懂色中文一区二区三区在线视频 | 国产精品久久久久亚洲 | 全黄裸片武则天艳史 | 国产乱码精品一区二区三区中 | 亚洲天堂三级 | 欧美黄色大片在线观看 | 精品国产一区二区三区久久久蜜月 | 一区二区三区四区免费看 | 久久99中文字幕 | 激情深爱 | 亚洲国产一区在线 | 日本亚洲国产精品久久 | 久久中文字幕网 | 中文字幕视频在线 | 天堂动漫 | 日本高清www午夜视频 | 国产欧美日韩一区二区三区四区 | 国产精品19禁在线观看2021 | 99久久久久 | 日本伦理网站 | 美女视频黄在线观看 | 亚洲成网| 黄色免费av | 亚洲欧美日韩精品高清 | 久久久久毛片成人精品 | 夜夜撸.com | 99久久人妻无码精品系列性欧美 | 亚洲国内精品 | 精品一区二区日本高清 | 色艹 | 欧美日韩国产一区二区三区播放 | 波多野结衣手机视频一区 | 亚洲精品日韩在线 | aaaaa国产毛片| 亚洲有码转帖 | 99thz桃花论坛| 91久久亚洲国产成人精品性色 | 波多野结衣xfplay在线观看 | 亚洲一级在线观看 | 国产成人综合亚洲动漫在线 | 欧美一级毛片不卡免费观看 |