Start Debugging

.NET、C#、EF Core、MAUI、Blazor、Flutter に関する、実際にリリースする開発者向けの日々のノート。

2026-10-14 comparisondotnetcsharp
FileSystemWatcher とポーリングの比較: .NET でネットワーク共有上のファイル変更を検出する
SMB や NFS の共有では、ポーリングが信頼できる情報源であり、FileSystemWatcher はせいぜいヒントにすぎません。FileSystemWatcher は Linux と macOS ではリモートの変更を見逃し、ネットワーク上の 64 KB バッファーであふれ、接続が切れると完全に停止します。定期的なスナップショットの差分を使い、ウォッチャーは早めのスキャンを促すだけにしてください。.NET 10.0.10 で検証済みです。
2026-10-14 comparisoncsharpdotnet
C# で待機するときの Thread.Sleep と Task.Delay と SpinWait の違い
非同期コードでの時間指定の待機には await Task.Delay を使い、Thread.Sleep は自分が所有する専用スレッドでのみ使い、SpinWait はロックフリーのコード内でのマイクロ秒未満の待機にだけ使います。条件を待つ場合は、この 3 つではなくシグナル (ManualResetEventSlim、SemaphoreSlim、TaskCompletionSource) を使ってください。.NET 10.0.10 で計測しています。
2026-10-13 mcpazuredotnet
Azure MCP Server 3.0 は未知のパラメーターを拒否し、リソースをセキュアな既定値で作成するようになりました
Azure MCP Server 3.0.0 が 2026-10-12 にリリースされました。未知のパラメーターを含むツール呼び出しは失敗するようになり、subscription や tenant などのオプションが多くのツールから削除され、新しい Storage アカウントでは Shared Key 認証が無効になり、サーバーはステートレスな MCP 2026-07-28 プロトコルに対応します。
2026-10-13 errorsdotnetdotnet-10
修正: Windows で書き込み中のファイルに対して FileInfo.Length が古いサイズを返す
FileInfo はサイズをキャッシュし、列挙では NTFS が遅延更新するディレクトリエントリを読み、さらに書き込み側が自前のバッファーにバイトを保持していることもあります。Refresh() を呼ぶか、より確実には共有ハンドルから RandomAccess.GetLength で長さを読み取ってください。
2026-10-13 errorsflutterflutter-3-47
修正: flutter upgrade や Flutter バージョンの切り替え後に pubspec.lock が変更扱いになる
Flutter SDK は meta、vector_math、test_api、matcher のバージョンを固定しているため、SDK を変えるたびにロックファイルが再解決されます。さらに flutter upgrade は今いるプロジェクトに対して pub upgrade を実行します。リポジトリごとに Flutter バージョンを 1 つに固定し、CI でロックファイルを強制しましょう。
ページ 1 / 86