ブログ 2024/04/04 ref/ref struct 変数を非同期メソッド中で使えるように 前回の Lock クラスの話を見てから、とりあえず以下のコードを見てほしい。 using System.Runtime.Versioning; [module: RequiresPreviewFeatures] class MultiThreadCode { private static readonly object _syncObj = new(); private static readonly Lock _syncLock = new(); pu… 続きを読む 2024/04/04 Lock クラス 今日は、 .NET 9 で Lock クラスというのが入る予定で、 それに伴って C# コンパイラーにも対応が必要そうという話。 一応雰囲気的には C# 13 に入りそう。 任意のオブジェクトを lock C# はなぜか任意のオブジェクト インスタンスを使って排他制御ができます。 ロックを掛けるために以下のようなコードを書くことになります。 class MultiThreadCode { private readonly object _syncObj = new ob… 続きを読む 2024/03/20 Extensions (拡張型) C# 3.0 から拡張メソッドが使えるわけですが、 もうちょっといろんな「拡張」をしたいという話が前々からあります。 例えば以下のような要求。 既存の型に静的メンバーも足したい プロパティや演算子も足したい インターフェイスの後付けもしたい 今では Extensions とか呼ばれていまして、以下の issue でトラッキング中。 Exploration: Shapes and Extensions #164 ここからさかのぼって、かつては Extension e… 続きを読む 2024/03/16 C# 13 でのコレクション式 - ディクショナリ式 C# 13でのコレクション式関連、量が多いのでちょっとずつ取り上げシリーズ。 [Proposal]: Collection Expressions Next (C#13 and beyond) 今日はディクショナリ式の話を。 ディクショナリ式 ← 今日はこれ 自然な型 インラインなコレクション式 コレクションに対する拡張メソッド 現状でコレクション式に対応してない型 非ジェネリックなコレクションのサポート 制限の緩和 ディクショナリ式 C# 12 でコレクシ… 続きを読む 2024/03/09 C# 13 でのコレクション式 - 制限の緩和の話 C# 13 でのコレクション式 - 制限の緩和の話 C# 12 でコレクション式が入ったわけですが、 スケジュールの都合で「C# 12 後に改めて検討する」ということになった機能がたくさんあります。 C# 12 リリース(2023/11)直後から再検討が始まっていて、先月にはある程度まとまった計画が出ています。 [Proposal]: Collection Expressions Next (C#13 and beyond) 量が多いのでちょっとずつ取り上げ… ディクショ… 続きを読む 過去の投稿へ
2024/04/04 ref/ref struct 変数を非同期メソッド中で使えるように 前回の Lock クラスの話を見てから、とりあえず以下のコードを見てほしい。 using System.Runtime.Versioning; [module: RequiresPreviewFeatures] class MultiThreadCode { private static readonly object _syncObj = new(); private static readonly Lock _syncLock = new(); pu… 続きを読む
2024/04/04 Lock クラス 今日は、 .NET 9 で Lock クラスというのが入る予定で、 それに伴って C# コンパイラーにも対応が必要そうという話。 一応雰囲気的には C# 13 に入りそう。 任意のオブジェクトを lock C# はなぜか任意のオブジェクト インスタンスを使って排他制御ができます。 ロックを掛けるために以下のようなコードを書くことになります。 class MultiThreadCode { private readonly object _syncObj = new ob… 続きを読む
2024/03/20 Extensions (拡張型) C# 3.0 から拡張メソッドが使えるわけですが、 もうちょっといろんな「拡張」をしたいという話が前々からあります。 例えば以下のような要求。 既存の型に静的メンバーも足したい プロパティや演算子も足したい インターフェイスの後付けもしたい 今では Extensions とか呼ばれていまして、以下の issue でトラッキング中。 Exploration: Shapes and Extensions #164 ここからさかのぼって、かつては Extension e… 続きを読む
2024/03/16 C# 13 でのコレクション式 - ディクショナリ式 C# 13でのコレクション式関連、量が多いのでちょっとずつ取り上げシリーズ。 [Proposal]: Collection Expressions Next (C#13 and beyond) 今日はディクショナリ式の話を。 ディクショナリ式 ← 今日はこれ 自然な型 インラインなコレクション式 コレクションに対する拡張メソッド 現状でコレクション式に対応してない型 非ジェネリックなコレクションのサポート 制限の緩和 ディクショナリ式 C# 12 でコレクシ… 続きを読む
2024/03/09 C# 13 でのコレクション式 - 制限の緩和の話 C# 13 でのコレクション式 - 制限の緩和の話 C# 12 でコレクション式が入ったわけですが、 スケジュールの都合で「C# 12 後に改めて検討する」ということになった機能がたくさんあります。 C# 12 リリース(2023/11)直後から再検討が始まっていて、先月にはある程度まとまった計画が出ています。 [Proposal]: Collection Expressions Next (C#13 and beyond) 量が多いのでちょっとずつ取り上げ… ディクショ… 続きを読む