コード例 #1
0
 public static void OnUpdate()
 {
     if (callBackQueue.Count > 0)
     {
         LocalImageLoader imageLoader = callBackQueue[0];
         if (imageLoader != null)
         {
             imageLoader.CallCallback();
         }
         callBackQueue.RemoveAt(0);
     }
 }
コード例 #2
0
        public static LocalImageLoader AsyncLoadImage(LocalImageLoader localImageLoader)
        {
            Setup();

            if (localImageLoader == null)
            {
                Debug.LogError("ImageLoadManager->AsyncLoadImage: input parameter is null!");
                return(null);
            }

            taskQueue.Add(localImageLoader);

            return(localImageLoader);
        }
コード例 #3
0
 private void DoTask()
 {
     Debug.Log("ImageLoadManager->DoTask start");
     while (!quiteThread)
     {
         if (taskQueue.Count > 0)
         {
             LocalImageLoader imageLoader = taskQueue [0];
             GetDataFromFile(imageLoader);
             callBackQueue.Add(imageLoader);
             taskQueue.RemoveAt(0);
         }
         else
         {
             Thread.Sleep(100);
         }
     }
     Debug.Log("ImageLoadManager->DoTask end!");
 }
コード例 #4
0
        private void GetDataFromFile(LocalImageLoader localImageLoader)
        {
            if (localImageLoader != null)
            {
                string url = localImageLoader.Url;
//				Debug.Log ("ImageLoadManager->GetDataFromFile url= "+url);
                if (File.Exists(url))
                {
                    byte[] data = File.ReadAllBytes(url);
                    if (data == null || data.Length <= 0)
                    {
                        Debug.LogError("ImageLoadManager->GetDataFromFile: read byte data is null, url is " + url);
                        return;
                    }
                    LocalImageLoaderResponse response = new LocalImageLoaderResponse();
                    response.Data             = data;
                    localImageLoader.Response = response;
                }
                else
                {
                    Debug.LogWarning("ImageLoadManager->GetDataFromFile: file is not exits, url= " + url);
                }
            }
        }