macSKK
macSKK copied to clipboard
FileDictをSwift Concurrency対応
UserDictやFileDictでSwift Concurrency対応してSwift 6でコンパイルエラーになるという警告が出ないように修正します。
辞書の参照や単語の追加削除は基本的には @MainActor にしていくだけなのですが、読み込みだけは時間がかかるため別スレッドでの実行を可能にする必要があります。
そのためnonisolatedなメソッド FileDict#load を生やし、読み込み処理はそちらにもっていきます。
nonisolatedなメソッド内でメンバ変数dictを設定する必要があり、そのためにasyncメソッドにしています。