Domanda

Se l'applicazione è mirata su Windows Vista o versioni successive, potremmo sostituire tutte le noreferrer sezioni critiche con SRW serrature ? Poiché sezione critica è mutuamente esclusivo, per utilizzo è equivalente a blocchi SRW in modo esclusivo, giusto? Secondo MSDN, SRW è ottimizzato sia per la velocità e lo spazio. C'è qualche svantaggio per fare questo? Io non sono sicuro di come CS e SRW sono implementate internamente da Microsoft.

Grazie!

È stato utile?

Soluzione

Il libro di See Joe Duffy "programmazione concorrente su Windows", pag 289.

La risposta breve alla tua domanda è "quasi". Ci sono la semantica con del CRITICAL_SECTION ricorsivamente acquisiti che sono diversi per SRWL di. Se il programma ha approfittato di queste caratteristiche di sezioni critiche di Win32, allora non è possibile passare all'ingrosso a SRWL facilmente. Si potrebbe, tuttavia, avvolgere uno SRWL in un involucro di fornire CS come la semantica, ma ci sono un sacco di sottigliezze in tal modo, in modo che siano meglio attaccare al CS di se si è in funzione di tale comportamento.

Kenny Kerr descrive un po 'su come entrambi sono implementate internamente .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top