我正在嘗試使用python(稍后可能用c語言)和TCP套接字制作一個本地網絡聊天程序。
我的目的是讓服務器監聽當前計算機的地址以獲取傳入消息,并將這些消息轉發給客戶端(我現在還不確定)。
客戶端將是一個簡單的gui,可以通過本地連接向活動服務器發送消息。實際上,這種設置將形成某種節點網絡。
是否可以在同一個應用程序中同時使用服務器和客戶端,最好不使用線程?我知道服務器在監聽連接時會暫停,因此gui無法響應。
如果我不能在同一個應用程序中同時使用這兩個應用程序,我正在考慮使用兩個相互通信的應用程序,但是線程似乎是一個更好的替代方法,因為我將使用兩個進程。如果我有單獨的應用程序,我如何從服務器向客戶端發送字符串,以更新gui?
當wants服務器向客戶端發送消息時,我是否可以生成某種事件(在客戶端)?
此外,如何檢查服務器是否處于活動狀態(可用并綁定到其計算機地址,等待消息)?
我的服務器/客戶機關系模型是否合理?有什么建議嗎?
我檢查過堆棧溢出的類似套接字問題,但沒有找到任何專門解決我的問題的。我可能漏掉了一些,所以如果發現它們相關,請將我的注意力轉移到它們身上。
注意:我不熟悉套接字和網絡。