0
我正在編程接收UDP廣播(從PC發送10Hz)的Android應用程序,我正在測量DataGramSocket.receive()之前和之後的時間。通常,完成receive()需要100ms(因爲它預期的是10Hz數據),但在receive()之前和之後,通常我會得到0 ms的時間差。這是否意味着數據包已被丟棄?爲什麼Android DatagramSocket.receive()在0 ms內完成?
我正在編程接收UDP廣播(從PC發送10Hz)的Android應用程序,我正在測量DataGramSocket.receive()之前和之後的時間。通常,完成receive()需要100ms(因爲它預期的是10Hz數據),但在receive()之前和之後,通常我會得到0 ms的時間差。這是否意味着數據包已被丟棄?爲什麼Android DatagramSocket.receive()在0 ms內完成?
這意味着數據包在您調用recv()之前已經到達。
但是不recv()阻止呼叫? (我檢查了SO_TIMEOUT它是0,所以它沒有限制)。並且不應該接收阻止並等待直到收到第二個數據包? – user2900152