我剛剛開始學習C中的網絡編程是如何工作的,並且我編寫了一個向UNIX終端發送消息的小程序。我在我的程序中使用pthreads,其中一個基本上只是在recvfrom()
上等待接收消息。在Unix上用C取消UDP recvfrom
但是,如果用戶選擇退出程序,我希望能夠正確關閉所有線程。現在我已經設置了它的方式,一個不同的線程只是取消了recvfrom的線程,但我擔心這可能不是一個好主意,因爲我離開套接字未關閉,我沒有釋放所有的內存分配。
有沒有辦法取消recvfrom()
調用,或某種方式來取消pthread時運行某些例程?
謝謝。