TimeZoneInfo.ClearCachedData Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Borra los datos de zona horaria almacenados en caché.
public:
static void ClearCachedData();
public static void ClearCachedData ();
static member ClearCachedData : unit -> unit
Public Shared Sub ClearCachedData ()
Comentarios
Los datos de zona horaria almacenadas en caché incluyen datos en la zona horaria local y en la zona horaria universal coordinada (UTC).
Puede llamar al ClearCachedData
método para reducir la memoria dedicada a la memoria caché de la aplicación de información de zona horaria o para reflejar el hecho de que la zona horaria del sistema local ha cambiado.
No se recomienda almacenar referencias a las zonas horarias locales y UTC. Después de la llamada al ClearCachedData
método , estas variables de objeto serán objetos no definidos TimeZoneInfo que ya no son referencias a TimeZoneInfo.Local o TimeZoneInfo.Utc. Por ejemplo, en el código siguiente, la segunda llamada al TimeZoneInfo.ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo) método produce porque ArgumentException la local
variable ya no se considera igual a TimeZoneInfo.Local.
TimeZoneInfo cst = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time");
TimeZoneInfo local = TimeZoneInfo.Local;
Console.WriteLine(TimeZoneInfo.ConvertTime(DateTime.Now, local, cst));
TimeZoneInfo.ClearCachedData();
try
{
Console.WriteLine(TimeZoneInfo.ConvertTime(DateTime.Now, local, cst));
}
catch (ArgumentException e)
{
Console.WriteLine(e.GetType().Name + "\n " + e.Message);
}
open System
let cst = TimeZoneInfo.FindSystemTimeZoneById "Central Standard Time"
let local = TimeZoneInfo.Local
printfn $"{TimeZoneInfo.ConvertTime(DateTime.Now, local, cst)}"
TimeZoneInfo.ClearCachedData()
try
printfn $"{TimeZoneInfo.ConvertTime(DateTime.Now, local, cst)}"
with :? ArgumentException as e ->
printfn $"{e.GetType().Name}\n {e.Message}"
Dim cst As TimeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time")
Dim local As TimeZoneInfo = TimeZoneInfo.Local
Console.WriteLine(TimeZoneInfo.ConvertTime(Date.Now, local, cst))
TimeZoneInfo.ClearCachedData()
Try
Console.WriteLine(TimeZoneInfo.ConvertTime(Date.Now, local, cst))
Catch e As ArgumentException
Console.WriteLine(e.GetType().Name & vbCrLf & " " & e.Message)
End Try