Tag: interlocked
Bietet Atomare Operationen für Variablen, die gemeinsam von mehreren threads.
3
Antworten
System.Threading.Interlocked.CompareExchange Betreiber bietet atomic (also thread-safe) - C# - Implementierung der Compare-And-Swap-operation. Beispielsweise int i = 5; Interlocked.CompareExchange(ref i, 10, 5); Nach diesem Befehl werden die int würde ich den Wert = 10. Und auch der Vergleich
5
Antworten
Habe ich gemacht, einfache multi-threading in VB.NET für eine Weile, und habe gerade erst in meine erste große multi-threaded-Projekt. Ich habe immer alles getan, was mit der Synclock Aussage, weil ich nicht glaube, es gibt einen besseren
3
Antworten
Wie ändere ich eine int atomar und thread-sicher in Java? Inkrementieren atomar, test & set, etc...? InformationsquelleAutor ripper234 | 2009-07-20
4
Antworten
(Dies ist eine Wiederholung von: Wie Sie richtig Lesen, eine Verriegelte.Increment ' ed int-Feld? aber, nach dem Lesen der Antworten und Kommentare, ich bin immer noch nicht sicher die richtige Antwort.) Es gibt einige Codes, die ich
3
Antworten
Fand ich einen compiler-Fehler in nur einer Zeile code: int thisIndex = Interlocked.Increment(ref messagesIndex) & indexMask; Den Definitionen sind: static int messagesIndex = -1; public const int MaxMessages = 0x10000; const int indexMask = MaxMessages-1; messagesIndex nicht
4
Antworten
Beim Lesen über die Funktion InterlockedIncrement sah ich die Bemerkung, dass die übergebene variable muss angepasst werden, auf einem 32-bit-Grenze. Normalerweise habe ich den code gesehen nutzt die InterlockedIncrement wie diese: class A { public: A(); void
9
Antworten
Sagen, dass eine Klasse eine public int counter Feld, das den Zugriff durch mehrere threads. Diese int ist nur inkrementiert oder dekrementiert. Erhöhen Sie dieses Feld, welcher Ansatz verwendet werden sollte und warum? lock(this.locker) this.counter++;, Interlocked.Increment(ref this.counter);,
6
Antworten
Ist Interlocked.Increment(ref x) schneller oder langsamer als x++ für ints und longs auf verschiedenen Plattformen? InformationsquelleAutor der Frage SLaks | 2009-06-23
10
Antworten
Übernehmen: A. C++ unter WIN32. B. Eine ordnungsgemäß ausgerichtet volatile integer inkrementiert und dekrementiert mit InterlockedIncrement() und InterlockedDecrement(). __declspec (align(8)) volatile LONG _ServerState = 0; Wenn ich will einfach nur Lesen _ServerState, benötige ich zum Lesen der