Repository navigation
JA CSharp Resources
Codex edited this page Oct 11, 2026
·
2 revisions
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
IDisposable.Dispose は、リソースが不要になったときにリソースを解放します。 using はリリースをコード領域に関連付けます。 await using は IAsyncDisposable.DisposeAsync を待っています。ガベージ コレクターは管理メモリを解放しますが、ファイルやその他の外部リソースを適切なタイミングで閉じることに代わるものではありません。
この例を Example.cs として別に保存し、このページの他の例とは独立して実行してください。
Example.cs:
// PROJECT-EXAMPLE
using System;
using (var stream = new System.IO.MemoryStream())
{
stream.WriteByte(65);
Console.WriteLine(stream.Length);
}結果:
1
{
using var stream = new System.IO.MemoryStream();
stream.WriteByte(42);
stream.Position = 0;
UO.Print(stream.ReadByte().ToString());
}sealed class Lease : IAsyncDisposable
{
public bool Released { get; private set; }
public ValueTask DisposeAsync()
{
Released = true;
return ValueTask.CompletedTask;
}
}
var lease = new Lease();
await using (lease)
{
await WaitAsync(10);
}
UO.Print(lease.Released.ToString());公式ドキュメント: リリースリソース: IDisposable、using、await using - Microsoft 学習。
ClassicUO — Bad Newbie & C# Scripts IDE