Re: [問題] 如何讀取外部傳進來的參數?
※ 引述《gn00618777 (非常念舊)》之銘言:
: 我知道在 main(int argc, char*argv){
: }
: 可以傳外部參數進去例如 xxx.exe "參數"
: 但如果我在 main 裡面有一個無窮迴圈 while
: while 裡面我該如何獲得外面傳進來的參數呢??(假設這個無窮迴圈不能read file)
: 短時間內想不出來="=
: 謝謝指教
我把我自己伺服器用的TCP and Unix domain Socket IPC整理在github上
https://github.com/hn12404988/Neural_Socket
這個專案的目的是「輕量,高效,穩定」的IPC,所以選擇TCP socket 和 Unix Domain
另外目前只有在Linux上測試而已,OSX我猜應該沒問題,windows可能就要改寫一些地方
server特色:
每個connection有自己的thread獨立運作,意思就是,一個server可以被好幾個client連接
每個thread接收自己的訊息,不會在開thread處理,所以處理完這個訊息回覆後,才會處理
下一個進來的訊息,如果connection被client關掉或是不明原因中斷連線,server會自己回收
掉那個thread
client特色:
一個client可以同時跟好幾個server保持連線,需要設定一個最大連線數,如果滿了之後,
又有新的server要連線,client會關掉最少用的連線,然後加入新的。
除了傳統的「傳送然後接收」,還有「射後不理」,就是client發送訊息後,就開一個新的
thread自己去接收不重要的回覆,不會影響main thread運作。
「射後不理」不用擔心如果server處理太慢,或是client射太快,server有可能一次把兩次
的訊息一次讀取進去,因為client如果知道上一個「射後不理」還沒收到server的回傳
client會把新的訊息先存起來,等到上一個回來了,就會把訊息在馬上送出去
Note:
可以看得出來,server不管怎樣一定要回傳訊息,不然會拖慢到client的速度,雖然最終
client都會放棄沒有訊息回傳的溝通,但會嚴重影響效能。
其他細節請看example檔案,自己compile跑看看,如果有問題請在跟我說,或github上issue
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.133.16.181
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1472613117.A.414.html
推
08/31 11:44, , 1F
08/31 11:44, 1F
推
08/31 11:46, , 2F
08/31 11:46, 2F
→
08/31 11:46, , 3F
08/31 11:46, 3F
推
08/31 11:48, , 4F
08/31 11:48, 4F
→
08/31 11:48, , 5F
08/31 11:48, 5F
→
08/31 11:48, , 6F
08/31 11:48, 6F
→
08/31 11:48, , 7F
08/31 11:48, 7F
→
08/31 12:13, , 8F
08/31 12:13, 8F
→
08/31 12:24, , 9F
08/31 12:24, 9F
→
08/31 12:25, , 10F
08/31 12:25, 10F
→
08/31 12:26, , 11F
08/31 12:26, 11F
→
08/31 12:31, , 12F
08/31 12:31, 12F
→
08/31 12:32, , 13F
08/31 12:32, 13F
→
08/31 12:33, , 14F
08/31 12:33, 14F
→
08/31 12:35, , 15F
08/31 12:35, 15F
→
08/31 12:36, , 16F
08/31 12:36, 16F
→
08/31 12:37, , 17F
08/31 12:37, 17F
→
08/31 12:38, , 18F
08/31 12:38, 18F
→
08/31 12:40, , 19F
08/31 12:40, 19F
推
08/31 13:14, , 20F
08/31 13:14, 20F
→
08/31 13:14, , 21F
08/31 13:14, 21F
→
08/31 14:26, , 22F
08/31 14:26, 22F
→
08/31 14:26, , 23F
08/31 14:26, 23F
→
08/31 14:27, , 24F
08/31 14:27, 24F
→
08/31 14:28, , 25F
08/31 14:28, 25F
→
08/31 14:28, , 26F
08/31 14:28, 26F
推
08/31 18:12, , 27F
08/31 18:12, 27F
→
08/31 18:13, , 28F
08/31 18:13, 28F
→
08/31 18:48, , 29F
08/31 18:48, 29F
推
08/31 21:09, , 30F
08/31 21:09, 30F
→
08/31 21:10, , 31F
08/31 21:10, 31F
→
08/31 21:11, , 32F
08/31 21:11, 32F
→
08/31 21:11, , 33F
08/31 21:11, 33F
→
08/31 21:11, , 34F
08/31 21:11, 34F
→
08/31 22:05, , 35F
08/31 22:05, 35F
→
08/31 22:06, , 36F
08/31 22:06, 36F
→
08/31 23:22, , 37F
08/31 23:22, 37F
推
09/01 03:39, , 38F
09/01 03:39, 38F
→
09/01 03:40, , 39F
09/01 03:40, 39F
→
09/01 03:40, , 40F
09/01 03:40, 40F
※ 編輯: hn12404988 (220.133.16.181), 09/02/2016 08:22:52
討論串 (同標題文章)