[Delphi] Automatisch gegenereerde TOleControl thread-safe?

Pagina: 1
Acties:

  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 15:56

Tomatoman

Fulltime prutser

Topicstarter
In zijn algemeenheid zijn VCL-componenten niet thread-safe. Er zijn echter uitzonderingen. Hoe zit het in zijn algemeenheid met non-visual OLE controls?

Ik zal mijn specifieke situatie toelichten. Ik gebruik een data-acquisitie device om externe hardware aan te sturen. Daarmee kan ik communiceren via een aantal functies in een DLL, maar ook via een paar OLE controls die Delphi zelf heeft gegenereerd uit een type library (een .ocx-bestand). Ik vermoed dat de type library weinig meer omhelst dan een wrapper om de DLL-functies, maar dat weet ik niet zeker.

Aangezien de DLL-functies thread-safe zijn, zijn de functies in de geïmporteerde dispinterface dat waarschijnlijk ook. De TOleControl is simpelweg een automatisch gegenereerde wrapper rond de dispinterface. Kan ik er zeker van zijn dat deze TOleControl thread-safe is?

Een goede grap mag vrienden kosten.


  • martijn_brinkers
  • Registratie: November 2001
  • Laatst online: 31-10-2025
Deze link zegt van niet (komt van een TeamB'er)

http://groups.google.com/...F45%40voicepoll.com#link2

TOleControl is meer dan een thin wrapper en zo op het 1e gezicht ziet het er ook niet thread safe uit (zie bijv. CreateControl waarin if FOleControl = nil niet mbv een critical section is gelocked).

  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 15:56

Tomatoman

Fulltime prutser

Topicstarter
OK, da's duidelijk. Dan ga ik de DLL-functies zelf maar in een component-wrapper gieten.

Een goede grap mag vrienden kosten.