2016-09-18 12 views
1

У меня есть общее сомнение относительно синхронизации ->Что такое синхронизация - свойство?

Когда мы говорим, что взаимное исключение выполняется между двумя процессами, я имею в виду, что это свойство является желательным. Это не проблема, которую нужно решить.

Точно так же, тупиковая, состояние гонки проблемы должны быть решены

Таким образом, синхронизация также свойство, которое должно быть сохранено, то есть, «Является ли это что-то желательно» или «проблема, которая должна быть решена "?

ответ

1

В желательном свойстве

  • безопасность потоков, или сохранение целостности некоторой структуры данных от изменений, сделанной одновременно, что может привести к повреждению содержимого этой структуры данных и

  • живучесть, которая является способностью ваших потоков добиваться прогресса.

Синхронизация - это средство, позволяющее сохранить целостность общих данных, не препятствуя живучести. Это лишь один из нескольких методов, направленных на сохранение безопасности потоков.

Синхронизация может стать проблемой, если у вас есть тупик, или если возникает узкое место (если слишком много потоков необходимо приобрести одну и ту же блокировку, и большинство из них не может добиться прогресса), так что программа может быть потоковой, но проблема остается проблемой.