Wat is het verschil tussen reentrant- en thread-safe-functies?
Wat is het verschil tussen reentrant- en thread-safe-functies?

Video: Wat is het verschil tussen reentrant- en thread-safe-functies?

Video: Wat is het verschil tussen reentrant- en thread-safe-functies?
Video: Atrioventricular reentrant tachycardia (AVRT) & AV nodal reentrant tachycardia (AVNRT) 2024, Mei
Anonim

Draadveilig code is er een die kan worden uitgevoerd vanuit meerdere draden veilig , zelfs als de oproepen gelijktijdig plaatsvinden op meerdere draden . herintreder codebetekent dat je alle dingen kunt doen draad veilig code kan wel, maar kan ook worden gegarandeerd veiligheid zelfs als je hetzelfde belt functie binnen hetzelfde draad.

Trouwens, wat is een re-entry functie?

EEN functie is herintreder als het kan worden aangeroepen terwijl het al in uitvoering is. Dat is een functie is herintreder als het kan worden onderbroken tijdens de uitvoering (bijvoorbeeld door een signaal of onderbreking) en opnieuw kan worden aangeroepen voordat de onderbroken uitvoering is voltooid.

Naast bovenstaande, is QT-thread veilig? Opmerkingen over Qt Klassen Veel Qt klassen zijn terugkerend, maar ze zijn niet gemaakt draad - veilig , omdat ze maken draad - veilig zou de extra overhead kosten van het herhaaldelijk vergrendelen en ontgrendelen van een QMutex. QString is bijvoorbeeld wel terugkerend, maar niet draad - veilig . Sommige Qt klassen en functies zijn: draad - veilig.

Dienovereenkomstig, wat zijn draadveilige functies?

van wikipedia: Draad veiligheid is een computerprogrammeerconcept dat toepasbaar is in de context van multi- schroefdraad programma's. In het bijzonder moet het voldoen aan de behoefte aan meerdere draden om toegang te krijgen tot dezelfde gedeelde gegevens, en de noodzaak dat een gedeeld stuk gegevens door slechts één persoon toegankelijk is draad op elk moment.

Wat zijn recursieve functies?

In programmeertermen a recursieve functie kan worden gedefinieerd als een routine die zichzelf direct of indirect aanroept.

Aanbevolen: