Vraag : Multithreading door een Omslag DLL

Ik heb een vraag over draad veilige programmering.  Ik ben een bedrijfstoepassingsontwikkelaar en begrijp werkelijk alle implicaties niet van draad-veilige programmering.  Ik heb een klant die een derde DLL gebruikt die en stateful draad-veilig/multithreaded is.  U kunt vele onafhankelijke zittingen in dit DLL van vele verschillende roepende programma's openen en elke zitting krijgt een geheelhandvat dat u als deel van verdere vraag aan API gebruikt.  DLL houdt elk van deze gezamenlijke zittingen over veelvoudige afzonderlijke draden en alles werkt great.

So hier is mijn probleem/kwestie/vraag.  Mijn die klant wil een omslag hebben rond bepaalde delen van API van deze derde DLL wordt geschreven.  Het punt van de omslag moet enkel de functieargumenten aanpassen.  DLL gebruikt standaardC die overeenkomsten roepen en baseert zich zwaar op C structs.  DLL is niet Com of om het even wat, enkel de ongecompliceerde statische functies van C.  Mijn klant wil tot API toegang hebben gebruikend een taal die niet structs kan behoorlijk behandelen.  Daarom willen zij een omslag DLL die rejigs structs als onafhankelijke functieargumenten die basisgegevenstypes gebruiken.  Dit allen schijnt vrij eenvoudig, cre�ër enkel een nieuwe DLL die de derde DLL met sommige statische functies verpakt die de vertalingen aan en van structs en basistypes doen.  

What die ik niet is dit weet:  Zal er om het even welke het inpassen complicaties zijn als ik dit eenvoudige DLL met ongecompliceerde statische omslagfuncties bouw?  Moet ik om het even wat problemen in een multi-threaded toepassing vermijden doen?

Antwoord : Multithreading door een Omslag DLL

>>the die de derde DLL heeft absoluut gegevens over veelvoudige draden worden gedeeld en
>>zelfs processen, denk ik.

Dan heeft het ook middelen om ervoor te zorgen dat deze elkaar niet belemmeren, en aangezien u de slechts vraag verpakt, zult u zich niet mengen in deze mechanismen.

>> Het werkelijk is eenvoudig dit, is niet het?

Als het slechts lokale variabelen is behandelt u - ja is het. De lokale variabelen worden toegewezen op de stapel, en aangezien elke draad zijn eigen stapel heeft, is dit gewaarborgd veilig om te zijn - draad-brandkast, letterlijk (gratie de woordspeling; o)
Andere oplossingen  
 
programming4us programming4us