コード例 #1
0
        private static void ProcessRequestQueue()
        {
            if (queueIsProcessing)
            {
                return;
            }
            queueIsProcessing = true;

            while (requestQueue.Count > 0)
            {
                var url = requestQueue.Dequeue();
                //D.Log("GoogleAnalytics : start request : " + url);
                WWW   www = new WWW(url);
                float timeoutCompletion = Time.realtimeSinceStartup + submitTimeout;
                ContinueWith.When(() => Time.realtimeSinceStartup > timeoutCompletion || www.isDone, () => ProcessRequestResult(www));
            }
            queueIsProcessing = false;
        }
コード例 #2
0
        private static void ProcessRequestQueue()
        {
            if (queueIsProcessing)
            {
                return;
            }
            queueIsProcessing = true;

            while (requestQueue.Count > 0)
            {
                var url = requestQueue.Dequeue();
                //D.Log("GoogleAnalytics : start request : " + url);
                var   form              = new WWWForm();
                var   request           = UnityWebRequest.Post(url, form);
                var   asyncOperation    = request.SendWebRequest();
                float timeoutCompletion = Time.realtimeSinceStartup + submitTimeout;
                ContinueWith.When(() => Time.realtimeSinceStartup > timeoutCompletion || asyncOperation.isDone, () => ProcessRequestResult(asyncOperation.webRequest));
            }
            queueIsProcessing = false;
        }