Sync
Тип
TявляетсяSync, если безопасно одновременно обращаться к значениюTиз нескольких потоков.
Точнее, определение такое:
TявляетсяSyncтогда и только тогда, когда&TявляетсяSend
Это утверждение по сути является сокращённым способом сказать, что если тип потокобезопасен для совместного использования, то безопасно передавать его ссылки через границы потоков.
Это потому, что если тип реализует Sync, значит, его можно разделять между несколькими потоками без риска гонок данных или других проблем синхронизации, поэтому безопасно переместить его в другой поток. Ссылку на такой тип тоже безопасно переместить в другой поток, так как данные, на которые она ссылается, можно безопасно читать из любого потока.