コード例 #1
0
        public static void DownloadDataToFile(string address, DownloadDataResultHandler callback)
        {
            Task <Tuple <byte[]?, Exception> > DownloadTask = new Task <Tuple <byte[]?, Exception> >(() => { return(ExecuteDownloadData(address)); });

            DownloadTask.Start();

            OnCheckDownload(DownloadTask, callback);
        }
コード例 #2
0
        private static void OnCheckDownload(Task <Tuple <byte[]?, Exception> > downloadTask, DownloadDataResultHandler callback)
        {
            for (; ;)
            {
                if (downloadTask.IsCompleted)
                {
                    Tuple <byte[]?, Exception> Result = downloadTask.Result;
                    callback(Result.Item1, Result.Item2);
                    break;
                }

                Thread.Sleep(1000);
            }
        }