CoInitializeEx()
Verfasst: 16.04.2011, 15:28
Hi,
XAudio2 verlangt von mir, dass ich CoInitializeEx() aufrufe. Dabei stehen mir verschiedene COINIT-Konstanten zur Verfügung, die ich übergeben kann/soll/muss – und ich weiß nicht, wie ich mich entscheiden soll (bei Direct3D ist man vor sowas ja wohlbehütet).
Wenn ich das richtig verstehe, sorgt COINIT_APARTMENTTHREADED dafür, dass alle Aufrufe aus verschiedenen Threads synchronisiert und seriell durch meinen Haupt-Thread verarbeitet werden. COINIT_MULTITHREADED schmeißt das alles weg und die Objekte haben selber dafür zu sorgen, dass sie bei Nebenläufigkeit nicht auf die Nase fallen. Ist damit der interne Text der COM-Objekte gemeint, oder meiner? D.h., muss ich dann die Synchronisierung selber übernehmen oder macht das die Bibliothek für mich?
Gruß, Ky
XAudio2 verlangt von mir, dass ich CoInitializeEx() aufrufe. Dabei stehen mir verschiedene COINIT-Konstanten zur Verfügung, die ich übergeben kann/soll/muss – und ich weiß nicht, wie ich mich entscheiden soll (bei Direct3D ist man vor sowas ja wohlbehütet).
Wenn ich das richtig verstehe, sorgt COINIT_APARTMENTTHREADED dafür, dass alle Aufrufe aus verschiedenen Threads synchronisiert und seriell durch meinen Haupt-Thread verarbeitet werden. COINIT_MULTITHREADED schmeißt das alles weg und die Objekte haben selber dafür zu sorgen, dass sie bei Nebenläufigkeit nicht auf die Nase fallen. Ist damit der interne Text der COM-Objekte gemeint, oder meiner? D.h., muss ich dann die Synchronisierung selber übernehmen oder macht das die Bibliothek für mich?
Gruß, Ky