Einzelnen Beitrag anzeigen

Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#1

TXMLDocument: CoInitialize bei MultiThreading?

  Alt 26. Feb 2009, 10:13
Hallo!

Ich verwende jetzt die TXMLDocument Komponente in einem Programm mit mehreren Threads.
Auf die Komponente wird auch aus mehreren Threads aus zugegriffen.
Wenn ich zB im Hauptthread ein FXML.LoadFromFile(Datei) aufrufe funktioniert dies problemlos.
Rufe ich jedoch aus einem Thread dieses FXML.LoadFromFile(Datei) auf, bekomme ich die Meldung "CoInitialize wurde nicht aufgerufen".
Mit CoInitialize und CoUnInitialize funcktioniert es.

Jetzt die Frage(n):
Was macht dieses CoInitialize? Wird die Verwendung der XML Komponente dadurch threadsicher?
Sprich kann ich gleichzeitig aus mehreren Threads die Datei laden und reinschreiben?

Falls dies nicht der Schlüssel ist, wie mache ich diese Komponente am besten threadsicher?

mfg

Edit: Den Text zu CoInitialize aus der Hilfe kenn ich schon, aber warum muss ich CoInitialize nur in nem Thread aufrufen und nicht im Hauptthread?
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat