如果應用程序將字節寫入端口,並且沒有人從該端口讀取數據,那麼數據會發生什麼變化? 假設一個應用程序每分鐘向端口寫入一條char消息(消息有結束標記),並且應該從該端口讀取的應用程序關閉,消息是否會丟失?將字節寫入stram - 數據發生了什麼?
0
A
回答
2
如果端口關閉(通過TCP/IP或UDP/IP網絡),數據包將被丟棄,數據將丟失。如果它是開放的,但接收應用程序永遠不會讀取它,它將位於緩衝區中,直到應用程序終止,此時它將丟失。對於本地IPC,比如一個管道,數據只是在讀取緩衝區中放置,直到管道的讀取結束關閉,此時它將丟失。
TL; DR:丟失了。
+0
此外,在TCP/IP網絡中,如果端口關閉,發送方可能會收到一個RST包(儘管這不一定會發生 - 接收方可以忽略未經請求的流量,或者某些防火牆可能會阻止它,等等。) –
相關問題
- 1. 爲什麼發生字節溢出,它們實現了什麼?
- 2. 將字符串轉換爲字節數組時發生了什麼
- 3. 發生了什麼錯了?
- 4. 發生了什麼
- 5. 爲什麼ObjectOutputStream.writeObject在寫入字節數組時比寫入字節更快?
- 6. 將大字節數組寫入輸出流可能會產生什麼影響?
- 7. fork()發生了什麼?
- 8. 發生什麼事情時寫入MySQL數據庫?
- 9. #WT發生了什麼?
- 10. mongodb寫入鎖定發生了什麼級別?
- 11. HTTP/2 - 發生了什麼?
- 12. 導入錯誤 - 發生了什麼?
- 13. customUserNamePasswordValidatorType發生了什麼?
- 14. closure.xml/emit發生了什麼?
- 15. ifilter發生了什麼事?
- 16. SwingEventMonitor發生了什麼?
- 17. Java:數組,這裏發生了什麼?
- 18. 內置函數中發生了什麼?
- 19. Mephisto發生了什麼?
- 20. 爲什麼離開函數時節點值發生了變化?
- 21. ICryptoTransform.TransformBlock:發生了什麼事?
- 22. MooTouch發生了什麼?
- 23. 數組存儲發生了什麼?
- 24. Mono 2.10.6發生了什麼
- 25. NUnit發生了什麼?
- 26. 對象發生了什麼?
- 27. LocationResult中發生了什麼?
- 28. XPathReader發生了什麼
- 29. 這裏發生了什麼?
- 30. 這個swift函數發生了什麼?
丟包 - https://en.wikipedia.org/wiki/Packet_loss –
Java或任何其他編程語言與此問題完全無關。 –