Domande taggate «atomic»

Un'operazione atomica è indivisibile. Questo termine viene utilizzato per descrivere le transazioni nei database, gli accessi di basso livello nei programmi multithread e le operazioni del file system, tra gli altri.



6
Cosa significa "atomico" nella programmazione?
Nel libro Effective Java, afferma: La specifica del linguaggio garantisce che la lettura o la scrittura di una variabile è atomica a meno che la variabile non sia di tipo longo double[JLS, 17.4.7]. Che cosa significa "atomico" nel contesto della programmazione Java o della programmazione in generale?
276 java  atomic 


3
Che cos'è esattamente std :: atomic?
Capisco che std::atomic<>è un oggetto atomico. Ma atomico fino a che punto? Secondo me un'operazione può essere atomica. Cosa si intende esattamente per rendere atomico un oggetto? Ad esempio, se ci sono due thread che eseguono contemporaneamente il seguente codice: a = a + 12; Quindi l'intera operazione (diciamo add_twelve_to(int)) …

13
Num ++ può essere atomico per "int num"?
In generale, per int num, num++(o ++num), come operazione di lettura-modifica-scrittura, non è atomico . Ma vedo spesso compilatori, ad esempio GCC , generare il seguente codice per esso ( prova qui ): Dato che la riga 5, che corrisponde a num++un'istruzione, possiamo concludere che in questo caso num++ è …

8
Il thread! = Check è sicuro?
So che operazioni composte come i++non sono thread-safe in quanto coinvolgono più operazioni. Ma controllare il riferimento con se stesso è un'operazione sicura del thread? a != a //is this thread-safe Ho provato a programmare questo e usare più thread ma non è fallito. Immagino di non poter simulare la …

5
Quando usare volatile con multi threading?
Se ci sono due thread che accedono a una variabile globale, molti tutorial dicono che rendono la variabile volatile per evitare che il compilatore memorizzi nella cache la variabile in un registro e che quindi non venga aggiornato correttamente. Tuttavia, due thread che accedono a una variabile condivisa sono qualcosa …

6
AtomicInteger lazySet vs. set
Qual è la differenza tra i metodi lazySete setdi AtomicInteger? La documentazione non ha molto da dire su lazySet: Alla fine si imposta sul valore dato. Sembra che il valore memorizzato non verrà impostato immediatamente sul valore desiderato, ma verrà invece programmato per essere impostato in futuro. Ma qual è …
116 java  concurrency  atomic 


4
Il file append è atomico in UNIX?
In generale, cosa possiamo dare per scontato quando aggiungiamo a un file in UNIX da più processi? È possibile perdere dati (un processo sovrascrive le modifiche dell'altro)? È possibile che i dati vengano alterati? (Ad esempio, ogni processo aggiunge una riga per append a un file di registro, è possibile …



2
Inizializzazione del vettore di atomica
Prendere in considerazione: void foo() { std::vector<std::atomic<int>> foo(10); ... } I contenuti di foo sono ora validi? O devo ripetere esplicitamente e inizializzarli? Ho controllato Godbolt e sembra che vada bene, tuttavia lo standard sembra essere molto confuso su questo punto. Il costruttore std :: vector afferma di inserire istanze …
12 c++  vector  atomic 


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.