• 程式碼趨近完成,寒假的課題終於也算是接近告一個段落了。

多人的server其實也跟兩人版的差不多,不過就是要注意client資料的宣告,可以預留一個位置做拒絕用,當人數已達上限時,多一個位置,把人accept進來後sign給他人數已滿的訊息,繼而close掉。

這次在寫的過程中,一個bug de了很久,就是為client啟動執行緒時把參數傳入create_thread時,由於傳的是i的位址(我用迴圈跑客戶資料陣列),在傳進去被存為另一變數前,父程序的i已經又跑完迴圈i++了,所以傳進去的值會比原本多一,於是recv接到的是fd==-1的client,結果就發生錯誤喽。這bug我de了好幾個小時才發現,資質駑鈍啊~~~
原先看這篇是教傳址:http://pthreadpthread.blogspot.tw/2012/03/pthread.html
後來這篇有另外教傳值:http://pccts.blogspot.tw/2007/11/pthreadcreate.html (*真是讓我@@)

nobodyzxc 發表在 痞客邦 留言(0) 人氣()