Вопросы по теме 'volatile'
Сбрасывает ли ключевое слово Java synchronized кеш?
Только Java 5 и выше. Предположим, что это многопроцессорный компьютер с общей памятью (вы, вероятно, используете его прямо сейчас).
Вот код для ленивой инициализации синглтона:
public final class MySingleton {
private static MySingleton...
2426 просмотров
schedule
18.10.2022
использование volatile для атомарных переменных
Использование volatile для переменной снижает риск ошибки согласованности памяти (пожалуйста, поправьте меня, если это обнаружит некоторые пробелы в моем понимании какой-либо соответствующей концепции). Таким образом, в следующем примере, несмотря на...
1163 просмотров
schedule
16.12.2023
изменчивая дата и время
Поскольку DateTime нельзя объявлять как volatile, правильно ли это?:
private DateTime _time;
public DateTime Time
{
get
{
Thread.MemoryBarrier();
return _time;...
6812 просмотров
schedule
07.01.2024
Должен ли я синхронизировать статическую изменчивую переменную?
Есть несколько вопросов по этому поводу, но большинство из них обходят эту проблему стороной, потому что это не цель вопроса.
Если у меня есть статическая изменчивость в моем классе:
private static volatile MyObj obj = null;
и в методе...
2715 просмотров
schedule
02.06.2024
Двойная блокировка Java. Может ли кто-нибудь объяснить проще, почему интуиция не сработает?
Я нашел здесь следующий код: http://en.wikipedia.org/wiki/Double-checked_locking#Usage_in_Java
Я пытаюсь понять, почему в некоторых случаях это не сработает. Я читал объяснение «тонких» проблем и что использование volatile решит проблему, но я...
258 просмотров
schedule
06.04.2024
Локальная переменная, используемая для доступа к переменной экземпляра volatile
Какова цель или значение создания локальной ссылки на статическую изменчивую переменную, которая уже сохранена как поле-член. Этот код взят из java.util.Scanner JDK 6b14 здесь .
class Scanner {
private static volatile Pattern linePattern;...
1097 просмотров
schedule
15.11.2023
ключевое слово volatile для объектов в C++
У меня есть потокобезопасный объект счетчика (это класс, который использует std::atomic load() и store()) в качестве одного из членов класса. Поток 1 увеличивает счетчик, а поток 2 считывает счетчик.
Обычно примитивные типы ( int и т. д. ),...
142 просмотров
schedule
15.06.2024
Отражение Java, добавьте модификатор volatile в частное статическое поле
Можно ли добавить модификатор volatile в поле, которое является приватным и статическим?
Пример кода
// I don't know when test is initalized
public class Test {
private static String secretString;
public Test() {
secretString =...
945 просмотров
schedule
24.02.2024
volatile указатель на функцию, показывающую ошибку компиляции при использовании без typedef; нужна помощь с void (* volatile userFunc)(void)
Я пишу библиотеку Arduino, используя классы С++. Внутри класса у меня есть частная переменная-член, которая является указателем на функцию.
Проблема в том, что мне нужно, чтобы указатель был изменчивым, поскольку указатель на функцию будет...
556 просмотров
schedule
01.02.2024
безопасное распределение обновления указателя между потоками
tl;dr:
class Controller
{
public:
volatile Netconsole* nc;
void init(); //initialize the threads
void calculate(); // handler for the "mothership app"
void senderThreadLoop(); //also calls reinitNet() if connection is...
409 просмотров
schedule
02.01.2024
код работает нормально без volatile?
Привет, я недавно написал код со следующим скелетом:
variable;
callback(){
//variable updated here
}
thread_function(){
//variable used
}
main(){
//callback registered
//thread registered
}
Я обнаружил, что всякий раз, когда variable...
82 просмотров
schedule
12.12.2022
Присваивает ли доступ к объявленному энергонезависимому объекту через изменчивую ссылку / указатель изменчивые правила для указанных доступов?
Это будет долгое время, так как чтобы контекстуализировать его и предоставить как можно больше информации, я должен блуждать по различным ссылкам и цитатам - часто это единственный способ, когда мы входим в стандартную кроличью нору C / C ++. Если у...
1132 просмотров
schedule
19.03.2024
Полезность volatile в параллельном программировании, начиная с C++11
Я прочитал это и этот ответ. Я также искал книгу C++ Concurrency in Action и не нашел ни обсуждения volatile , ни примеров его использования. Похоже, он вообще не предназначен для параллелизма. Итак, достаточно ли для параллельного...
280 просмотров
schedule
05.03.2024
Использование volatile в Singleton (решение Билла Пьюса)
Ниже приведен класс Java, использующий одноэлементное решение Билла Пью.
public class Singleton {
int nonVolatileVariable;
private static class SingletonHelper {
private static Singleton INSTANCE = new Singleton();
}...
229 просмотров
schedule
24.09.2022
Синхронизация между несколькими изменчивыми переменными
Учитывая приведенный ниже код:
public class Test {
private volatile boolean a;
private volatile boolean b;
private void one () {
a = true;
System.out.println (b);
}
private void two () {
b = true;
System.out.println...
72 просмотров
schedule
22.03.2024
Верна ли эта реализация C++ AtomicInt?
Предпосылка: я работаю со встроенной ARM-средой (почти с голым железом), где у меня даже нет доступного C++11 (с std::atomic<int> ), поэтому, пожалуйста, избегайте ответов типа " просто используйте стандартный C++ std::atomic<int> ": Я...
431 просмотров
schedule
16.05.2024
Будет ли гарантировано, что поток, обрабатывающий последующий сетевой запрос, увидит значение изменчивой переменной, записанное во время предыдущего запроса?
У меня теоретический вопрос о модели памяти Java. Предположим, у меня есть сервер с этими двумя обработчиками запросов в следующем классе:
class MyHandlers {
volatile int someFlag = 0;
String handleFirstRequest() {
someFlag = 1;...
85 просмотров
schedule
30.10.2023
C #: использование изменчивых полей с блокировкой
Насколько я понимаю, все Interlocked API в .NET вводят полный забор памяти. Тем не менее, я все еще вижу много примеров, когда volatile , который представляет собой полузаборы, используется в сочетании с Interlocked . Примером этого является...
51 просмотров
schedule
20.01.2024