SYSLIB0054: Thread.VolatileRead en Thread.VolatileWrite zijn verouderd
Alle overbelastingen van de Thread.VolatileRead en Thread.VolatileWrite methoden zijn verouderd, vanaf .NET 9. Als u deze in code aanroept, wordt er een waarschuwing SYSLIB0054
gegenereerd tijdens het compileren.
Reden voor verdoezeling
De .NET Framework-implementatie van de 64-bits overloads van de Thread.VolatileRead en Thread.VolatileWrite methoden had onjuiste atomiciteit. In .NET (Core) is de implementatie gewijzigd in de delegeren aan respectievelijk de Volatile.Read en Volatile.Write, die de juiste semantiek voor het verkrijgen/vrijgeven bieden. Bovendien bevatten de methoden in de Thread klasse geen overbelasting die een Booleaanse argument accepteert, terwijl de Volatile methoden wel. De methoden waren verouderd om het gebruik van de Volatile methoden aan te moedigen.
Tijdelijke oplossing
Bel Volatile.Read of Volatile.Write in plaats daarvan.
Een waarschuwing onderdrukken
Als u de verouderde API's moet gebruiken, kunt u de waarschuwing in code of in het projectbestand onderdrukken.
Als u slechts één schending wilt onderdrukken, voegt u preprocessorrichtlijnen toe aan uw bronbestand om de waarschuwing uit te schakelen en vervolgens opnieuw in te schakelen.
// Disable the warning.
#pragma warning disable SYSLIB0054
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0054
Als u alle SYSLIB0054
waarschuwingen in uw project wilt onderdrukken, voegt u een <NoWarn>
eigenschap toe aan het projectbestand.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0054</NoWarn>
</PropertyGroup>
</Project>
Zie Waarschuwingen onderdrukken voor meer informatie.