[問題] 開了pthread之後可以使用裡面的變數嗎?

看板C_and_CPP (C/C++)作者 ( )時間16年前 (2009/09/08 10:55), 編輯推噓4(407)
留言11則, 4人參與, 最新討論串1/2 (看更多)
開了一個pthread, 可以使用裡面宣告的變數嗎? 還是只能把變數設成global, 才能共用該變數呢? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.222.31.187

09/08 10:59, , 1F
什麼叫裡面宣告的變數?
09/08 10:59, 1F
void a() { pthread_creat(b); 這裡可以存取c嗎? } void b() { int c; } 謝謝 ※ 編輯: ckai1983 來自: 61.222.31.187 (09/08 11:06)

09/08 11:10, , 2F
不行, 或者是你可以在 a() 宣告, 再傳進 b() 裡面
09/08 11:10, 2F

09/08 11:26, , 3F
a 宣告 傳進去 b 也不一定可以哦 看你怎麼宣告的
09/08 11:26, 3F

09/08 13:39, , 4F
為啥不行呀?
09/08 13:39, 4F

09/08 20:14, , 5F
如果變數在 a 宣告的話 a create b 完就結束了
09/08 20:14, 5F

09/08 20:15, , 6F
當然 a 宣告的變數也會結束 這時候 b 去用 a 的變數
09/08 20:15, 6F

09/08 20:15, , 7F
會發生什麼問題 你應該知道 XD
09/08 20:15, 7F

09/08 20:15, , 8F
所以就要看你怎麼宣告的
09/08 20:15, 8F

09/08 23:39, , 9F
我之前的經驗 a 都還會跟 b 互動, 亦即是會等 b 的
09/08 23:39, 9F

09/08 23:40, , 10F
少考慮到不等的情況了 (汗)
09/08 23:40, 10F

09/09 00:08, , 11F
val scrope跟pthread的用法,你可能還要再看熟一點
09/09 00:08, 11F
文章代碼(AID): #1AfSULVJ (C_and_CPP)
文章代碼(AID): #1AfSULVJ (C_and_CPP)