1. 程式人生 > >多執行緒訪問socket, 是否需要加鎖?

多執行緒訪問socket, 是否需要加鎖?

參照文章:

編寫socket 多執行緒併發程式時, 遇到以下兩個問題:

同一個socket, 是否可以在兩個執行緒中同時send 和 recv?

同一個socket, 是否可以在多個執行緒中同時send?

答案: 都可以, 並無需加鎖控制.

socket是全雙工的, 多執行緒同時 send 和 recv 沒問題.

在作業系統層面, send 和 recv 均是原子操作, 多執行緒對同一個socket 傳送資料, 無需加鎖