java中的序列化和同步有什麼區別?我需要一個解釋或教程。java中的序列化和同步有什麼區別?
回答
同步指的是多線程。同步的代碼塊一次只能由一個線程執行。
序列化是指將對象轉換爲比特流用於存儲或傳輸。序列化操作根據特定規則對數據進行編碼。這個比特流可以在稍後或在接收它的遠程系統上被反序列化。爲了使序列化工作,類定義必須匹配(即,您需要使用相同版本的類或保證兼容的類),並且該類必須實現接口Serializable
。
更多關於serialization。
更多關於synchronization
+1;只是幾個額外的評論。首先,序列化這個術語有時也用於處理請求*的順序*而不是同時處理。除此之外,我會說Java對象被序列化爲字節流而不是比特流。 AFAIK,輸出始終是字節對齊的。 – 2010-06-08 11:48:12
序列所花的對象,並將其傾倒到的東西是該程序的範圍之外(例如,字符串或XML文件)
同步是具有在不同的運行線程的概念相互同步,以便它們不會同時使用共享資源。
據我所知,這些術語的共同點很少的(除非你有一個關於如何上連載需要同一個對象的兩個線程同步問題)
同步是併發性問題,例如你如何協調對來自多個線程的對象的訪問。
這裏是一個箭頭表示訪問。
s
[thread1] ---------------> y
n [shared object]
[thread2] ---------------> c
h
序列化是將數據結構和對象轉換爲可以存儲/傳輸然後再轉換回數據結構和對象的位序列。
此處箭頭表示轉換。
deserialization
<---------------
[object] [binary]
--------------->
serialization
當反序列化發生在另一個地方和/或時間時,這是最有用的。
同步確保一次只有一個線程正在執行,因此不會出現死鎖情況。
序列化是指存儲一個對象的狀態。例如,我們可以拍攝一個視頻遊戲。如果我們暫停遊戲並在稍後繼續遊戲,它將恢復遊戲。這意味着狀態和關卡已經存儲在這裏。
- 1. 在java中,Vector和Collections.synchronizedList都是同步的,有什麼區別?
- 2. 衝突序列化和序列化之間有什麼區別?
- 3. 同步函數和同步塊之間有什麼區別?
- 4. 反序列化和標準化有什麼區別?
- 5. pubsubhubbub - 同步和異步在訂閱Feed時有什麼區別?
- 6. 燼數據中不同的規範化/序列化鉤子有什麼區別?
- 7. 列表中的:::和++有什麼區別?
- 8. `|。有什麼區別? `和`|| `在java中?
- 9. Java中boolean和Boolean有什麼區別?
- 10. java中float和float有什麼區別?
- 11. !=和=!有什麼區別!在Java中?
- 12. Java中> =和=>有什麼區別?
- 13. **/*。java和* .java有什麼區別?
- 14. `java -version`和`java -showversion`有什麼區別?
- 15. java 1.5和java 1.6有什麼區別
- 16. getBytes和使用String序列化有什麼區別?
- 17. 序列化和編碼有什麼區別?
- 18. 持久性和序列化有什麼區別?
- 19. swift中的同步API和異步API之間有什麼區別?
- 20. 異步私有和私有異步的區別是什麼?
- 21. 在下一步中聲明和初始化的初始化有什麼區別?
- 22. 有什麼區別`和$(Bash中有什麼區別?
- 23. 使用synchronizedCollection和剛剛同步(集合)有什麼區別?
- 24. 同步塊和條件變量鎖之間有什麼區別?
- 25. java ObjectOutputStream和OutputStream有什麼區別?
- 26. PHP和Java有什麼區別?
- 27. scala @Serializable和Java Serializable有什麼區別?
- 28. Java 8:Instant和LocalDateTime有什麼區別?
- 29. JVisualVM和Java Mission Control有什麼區別?
- 30. Eclipse for Java和RCP有什麼區別?
列出相似之處可能會使(更多)更短的列表...他們不是非常相關的主題 – 2010-04-08 10:38:44
除了他們的名字的第一個和最後七個字母之外,它們在所有方面都不相同。 – 2010-04-08 10:43:48