Нестабильный x синхронизированный подход: какой параллельный код Java безопаснее и правильнее? Или они эквивалентны? ⇐ JAVA
Нестабильный x синхронизированный подход: какой параллельный код Java безопаснее и правильнее? Или они эквивалентны?
Я всегда об этом забываю. Я думаю, что оба кода верны. А может и нет. Я считаю, что тот, который использует ключевое слово Synchronized, является «более правильным», но и ключевого слова Летучий может быть достаточно.
Есть комментарии по поводу того, какой код лучше и/или правильнее?
публичный статический класс MyThread расширяет поток { частное изменчивое логическое значение isRunning = true; // изменчивый @Override общественный недействительный запуск () { в то время как (isRunning ()) { // занят... } } public void stopMe() { // несинхронизировано isRunning = ложь; } public boolean isRunning() { // несинхронизировано возврат isRunning; } } публичный статический класс MyThread расширяет поток { частное логическое значение isRunning = true; // энергонезависимый @Override общественный недействительный запуск () { в то время как (isRunning ()) { // занят... } } publicsynced void stopMe() { // синхронизировано isRunning = ложь; } общедоступный синхронизированный логический isRunning() { // синхронизирован возврат isRunning; } }
Я всегда об этом забываю. Я думаю, что оба кода верны. А может и нет. Я считаю, что тот, который использует ключевое слово Synchronized, является «более правильным», но и ключевого слова Летучий может быть достаточно.
Есть комментарии по поводу того, какой код лучше и/или правильнее?
публичный статический класс MyThread расширяет поток { частное изменчивое логическое значение isRunning = true; // изменчивый @Override общественный недействительный запуск () { в то время как (isRunning ()) { // занят... } } public void stopMe() { // несинхронизировано isRunning = ложь; } public boolean isRunning() { // несинхронизировано возврат isRunning; } } публичный статический класс MyThread расширяет поток { частное логическое значение isRunning = true; // энергонезависимый @Override общественный недействительный запуск () { в то время как (isRunning ()) { // занят... } } publicsynced void stopMe() { // синхронизировано isRunning = ложь; } общедоступный синхронизированный логический isRunning() { // синхронизирован возврат isRunning; } }
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Асинхронный/параллельный подход к работе с (потенциально) растущей очередью задач.
Anonymous » » в форуме Python - 0 Ответы
- 23 Просмотры
-
Последнее сообщение Anonymous
-