Потоковая безопасность

Потоковая безопасность

Потоковая безопасность (англ. thread-safety) — это концепция программирования, применимая к многопоточным программам. Код потоково-безопасный, если он функционирует корректно при использовании из нескольких потоков одновременно. В частности, он должен обеспечивать корректный доступ нескольких потоков к разделяемым данным.

В общем случае потоковая безопасность сложно устанавливается. Но существует несколько источников выявления нарушений потоковой безопасности:

Есть несколько способов достигнуть потоковой безопасности:

Реентерабельность 
Написание кода в таком стиле, что он может быть частично выполнен одним потоком, затем другим, и продолжен первым. Это требует сохранения состояния в локальных переменных, обычно на стеке, вместо глобальных или статических переменных.
Линеаризуемость 
Написание кода процедур (операций) таким образом, что результат любого их параллельного выполнения эквивалентен некоторому последовательному выполнению.

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Полезное


Смотреть что такое "Потоковая безопасность" в других словарях:

  • Thread-safety — Потоковая безопасность (англ. thread safety) это концепция программирования, применимая к многопоточным программам. Код потоково безопасный, если он функционирует корректно при использовании из нескольких потоков одновременно. В частности,… …   Википедия

  • Линеаризуемость — (англ. linearizability) в многопоточном программировании это свойство программы, при котором результат любого параллельного выполнения процедур (операций) эквивалентен некоторому последовательному выполнению. В этом случае для… …   Википедия

  • Steam — Steam …   Википедия

  • ONE-NET — Первый Открытый Протокол беспроводной сети передачи данных, разработанный для целей автоматизации зданий и управления распределёнными объектами. One Net может быть использован со множеством существующих приемопередатчиков (трансиверов) и… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»