コード例 #1
0
ファイル: ThreadingUtils.cs プロジェクト: oxfords561/MyGame
        public static DispatcherResult DispatchOnMainThread(System.Action x)
        {
            var d = new DispatcherResult();

            EditorApplication.delayCall += () =>
            {
                x();
                d.Done = true;
            };

            return(d);
        }
コード例 #2
0
        public static DispatcherResult DispatchOnMainThread(Action x)
        {
            var d = new DispatcherResult();

            EditorApplication.delayCall += () =>
            {
                x();
                d.Done = true;
            };

            return d;
        }
コード例 #3
0
ファイル: ThreadingUtils.cs プロジェクト: oxfords561/MyGame
        public static DispatcherResult WaitOnMainThread(Func <bool> selector)
        {
            var d = new DispatcherResult();

            EditorApplication.CallbackFunction callbackFunction = null;
            callbackFunction = () =>
            {
                if (selector())
                {
                    d.Done = true;
                    EditorApplication.update -= callbackFunction;
                }
            };
            EditorApplication.update += callbackFunction;

            return(d);
        }
コード例 #4
0
        public static DispatcherResult WaitOnMainThread(Func<bool> selector)
        {
            var d = new DispatcherResult();

            EditorApplication.CallbackFunction callbackFunction = null;
            callbackFunction = () =>
            {
                if (selector())
                {
                    d.Done = true;
                    EditorApplication.update -= callbackFunction;
                }
            };
            EditorApplication.update += callbackFunction;

            return d;
        }