タグ

unityとthreadに関するtake-yuのブックマーク (2)

  • UniRx.Async機能紹介

    UniTaskとは UniTaskとはUnity向けに最適化されたTask実装を提供するライブラリです。 もとはUniRxに組み込まれていましたが途中で分離し、独立した1つのライブラリとして提供されるようになりました。 もっと詳しい資料 UniTask入門 導入 C# 7系の機能に依存しているため、UniTaskを利用する場合はUnity 2018.3以降を推奨します。 導入はGitHubからパッケージをダウンロードし、Unityに取り込むだけでOKです。 UniTask UniTaskの機能紹介 Taskより軽量な「UniTask」 UniTaskでは、非同期処理をUniTaskというクラスで扱えるようにしています。 これはTaskをUnityに最適化する形で実装された非同期処理機構です。 (中身はValueTaskに近いです) Taskの実装を見てもらうとわかると思うのですが、Task

    UniRx.Async機能紹介
  • 【Unity開発者向け】「SynchronizationContext」と「Taskのawait」 - Qiita

    はじめに Unity 2018から.NET 4.6がstableになり、async/awaitやTask使いこなせるようになっておく必要がでてきました。 今回はそれらの裏に隠れている、SynchronizationContextという機構とその使い方について紹介します。 なお、この記事はUnity2018.1bを基準に書いています。 SynchronizationContextとは何なのか SynchronizationContextとは、ざっくり説明すると「指定した処理を指定したスレッドで実行するために用いるオブジェクト」です。 非同期処理を実行する場合、あるスレッドから別スレッドに処理を移譲することになります。 このとき、「非同期処理が終わったときに元のスレッドに処理を戻す」という需要が発生します。 これを解決するのがSynchronizationContextというオブジェクトです。

    【Unity開発者向け】「SynchronizationContext」と「Taskのawait」 - Qiita
  • 1