Esempio n. 1
0
        public static ProfileBlock Start(string sampleNameFormat, object obj)
        {
#if ZEN_TESTS_OUTSIDE_UNITY
            return(null);
#else
            if (UnityMainThread == null ||
                !UnityMainThread.Equals(System.Threading.Thread.CurrentThread))
            {
                return(null);
            }

            if (!Profiler.enabled)
            {
                return(null);
            }

            // We need to ensure that we do not have per-frame allocations in ProfileBlock
            // to avoid infecting the test too much, so use a cache of formatted strings given
            // the input values
            // This only works if the input values do not change per frame
            var hash = GetHashCode(sampleNameFormat, obj);

            string formatString;

            if (!_nameCache.TryGetValue(hash, out formatString))
            {
                formatString = string.Format(sampleNameFormat, obj);
                _nameCache.Add(hash, formatString);
            }

            return(StartInternal(formatString));
#endif
        }
Esempio n. 2
0
        private void _buildOnlineServer()
        {
            UnityMainThread.Spawn();

            var manager = NetworkManager.GetInstance();
            var secret  = "14508888";

            var network = manager.GetComponent();

            network.Url = "ws://127.0.0.1/socket.io/?EIO=4&transport=websocket";

            var i = 0;

            network.On("open", (e) =>
            {
                if (i == 0)
                {
                    network.Emit("serverCreated", JSONObject.Create($"{{\"token\":\"{secret}\"}}"));
                }
                i++;
            });
            network.On("serverCreated", _serverCreated);
            network.Connect();
            _gameKiller = _waitServer();
            StartCoroutine(_gameKiller);
        }
 static void StartDownloadingData(string url, Action <object> OnGetData)
 {
     ServicePointManager.ServerCertificateValidationCallback += (send, certificate, chain, sslPolicyErrors) => { return(true); };
     using (WebClient client = new WebClient())
     {
         try
         {
             string response = client.DownloadString(url);
             response = Regex.Replace(response, @"\\u([\dA-Fa-f]{4})", v => ((char)Convert.ToInt32(v.Groups[1].Value, 16)).ToString());
             //As we can not access any Unity related API in worker thread dispatching the result in main thread via helper class
             UnityMainThread.ExecuteOnMainThread(OnGetData, response);
         }
         catch (Exception ex)
         {
             UnityMainThread.ExecuteOnMainThread(OnGetData, ex);
         }
     }
 }
Esempio n. 4
0
        public static ProfileBlock Start(string sampleName)
        {
#if ZEN_TESTS_OUTSIDE_UNITY
            return(null);
#else
            if (UnityMainThread == null ||
                !UnityMainThread.Equals(System.Threading.Thread.CurrentThread))
            {
                return(null);
            }

            if (!Profiler.enabled)
            {
                return(null);
            }

            return(StartInternal(sampleName));
#endif
        }
Esempio n. 5
0
 void Awake()
 {
     wkr = this;
 }
Esempio n. 6
0
 public static SimpleCoroutineAwaiter GetAwaiter(this UnityMainThread instruction)
 {
     return(GetAwaiterReturnVoid(instruction));
 }