Stavo passando per uno re-entrancy guide sulle pratiche raccomandate durante la scrittura del codice del nuovo concorrente.Prassi raccomandate per il codice del nuovo concorrente in C, C++
Quali altri riferimenti e risorse trattano questo argomento?
Quali strumenti di tipo lanuginoso possono essere utilizzati per verificare questi problemi?
che guidano ha praticamente tutto quello che dovete sapere. Non è una cosa molto sottile. Non utilizzare dati che non sono stati trasferiti nella chiamata di funzione, non memorizzare alcun stato nella funzione. –
Questa guida ha numerosi errori in essa, da una definizione di rientranza che in realtà è il multithreading (benché gli esempi di elaborazione del segnale siano veri reentrancy) ai cattivi consigli (mutexes ... ciao deadlock) al semplice bugginess ('sigsuspend (& zeromask)'. . hai appena autorizzato l'elaborazione degli interrupt che il tuo chiamante ha disabilitato per un motivo, prova invece 'sigsuspend (& oldmask) '. –