Thread in DLL



  • Hallo zusammen,

    folgende Frage ergab sich gerade bei mir:
    Wenn ich eine 3rdParty DLL benutze und diese startet in der DLL einen Thread,
    was passiert wenn ich FreeLibrary() aufrufe?

    1.) Thread (dessen Code in der DLL ist) wird terminiert
    2.) Program stürzt ab, weil der Thread noch läuft die DLL aber entladen ist
    3.) das FreeLibrary() hängt und kehrt nicht zurück bis der Thread terminiert

    Die Frage ergibt sich, weil keiner den neuen Threadhandle zum terminieren erhällt, weil der Thread in dem DLL Code gestartet wurde.
    Ich gehe übrigends davon aus, das in den verschiedenen Detach Routinen des Herstellers KEINE eigens erstellte Thread Terminierung vom DLL Author eingefügt wurde. (Thread_Detach etc...)

    Grüße
    TheNoName


Anmelden zum Antworten