Ist GHashTable (glib2) threadsicher?

8

Ich habe mehrere Threads, die Daten in GHashTable hinzufügen, modifizieren und nachschlagen. Ist es threadsafe, oder muss ich selbst Threadssicherheit implementieren?

    
iseletsk 12.01.2012, 15:42
quelle

1 Antwort

13

In der Dokumentation ist dies ziemlich deutlich:

  

Nach dem Aufruf von g_thread_init() ist GLib vollständig Thread-sicher (alle globalen Daten werden automatisch gesperrt), aber einzelne Datenstrukturinstanzen werden aus Leistungsgründen nicht automatisch gesperrt. So müssen Sie beispielsweise Zugriffe auf das gleiche GHashTable von mehreren Threads koordinieren.

Also: Nein, die Hash-Tabelle ist nicht Thread-sicher.

    
unwind 12.01.2012, 16:25
quelle

Tags und Links