async
This commit is contained in:
parent
0fb9f1aa13
commit
40f25a4f4c
2 changed files with 82 additions and 28 deletions
|
|
@ -1 +1 @@
|
|||
Subproject commit d9b6b42b847a86423577b66a74320fe90669fc2e
|
||||
Subproject commit 5987cc26521d839bf81bdaab19d101488294da19
|
||||
|
|
@ -87,45 +87,99 @@ namespace WPFCatalog
|
|||
//private List<ImageTask> _tasks;
|
||||
private async void Start()
|
||||
{
|
||||
Task outerTask = new Task(() =>
|
||||
{
|
||||
var tasks = new List<Task>();
|
||||
// todo folder mode
|
||||
MaddoLogger.Log("Starting elaboration");
|
||||
foreach (var file in Directory.EnumerateFiles(PicSettings.DirectorySorgente))
|
||||
{
|
||||
//Task t = new Task(() =>
|
||||
//{
|
||||
|
||||
// //CompleteFile(file);
|
||||
//});
|
||||
tasks.Add(FileTask(file));
|
||||
//_tasks.Add(new ImageTask() { ImageName = file, TaskImage = t, Completed = false });
|
||||
//t.Start();
|
||||
//Task outerTask = new Task(() =>
|
||||
//{
|
||||
// Stopwatch s = new Stopwatch();
|
||||
|
||||
// var tasks = new List<Task>();
|
||||
// // todo folder mode
|
||||
// MaddoLogger.Log("Starting elaboration");
|
||||
// foreach (var file in Directory.EnumerateFiles(PicSettings.DirectorySorgente))
|
||||
// {
|
||||
// //Task t = new Task(() =>
|
||||
// //{
|
||||
|
||||
// // //CompleteFile(file);
|
||||
// //});
|
||||
// var t = FileTask(file);
|
||||
// if (t != null)
|
||||
// {
|
||||
// tasks.Add(t);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// MaddoLogger.LogError("Task was null for file: {0}", file);
|
||||
// }
|
||||
// //_tasks.Add(new ImageTask() { ImageName = file, TaskImage = t, Completed = false });
|
||||
// //t.Start();
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
Task.WhenAll(tasks).Start();
|
||||
// }
|
||||
// s.Start();
|
||||
|
||||
//tt.RunSynchronously();
|
||||
MaddoLogger.Log("Finished");
|
||||
DialogHelper.PopUpAlert("Finished", "message");
|
||||
});
|
||||
// await Task.WhenAll(tasks);
|
||||
|
||||
|
||||
outerTask.Start();
|
||||
// Task.WhenAll(tasks).Start();
|
||||
// s.Stop();
|
||||
// //tt.RunSynchronously();
|
||||
// MaddoLogger.Log("Finished: {0}, {1}", s.Elapsed, s.ElapsedMilliseconds);
|
||||
// DialogHelper.PopUpAlert($"Finished: {s.Elapsed}, {s.ElapsedMilliseconds}", "message");
|
||||
//});
|
||||
|
||||
Task outerTask = OuterTask();
|
||||
|
||||
await outerTask;
|
||||
}
|
||||
|
||||
private Task FileTask(string file)
|
||||
private async Task OuterTask()
|
||||
{
|
||||
Stopwatch s = new Stopwatch();
|
||||
|
||||
var tasks = new List<Task>();
|
||||
// todo folder mode
|
||||
MaddoLogger.Log("Starting elaboration");
|
||||
foreach (var file in Directory.EnumerateFiles(PicSettings.DirectorySorgente))
|
||||
{
|
||||
//Task t = new Task(() =>
|
||||
//{
|
||||
|
||||
// //CompleteFile(file);
|
||||
//});
|
||||
var t = FileTask(file);
|
||||
if (t != null)
|
||||
{
|
||||
tasks.Add(t);
|
||||
}
|
||||
else
|
||||
{
|
||||
MaddoLogger.LogError("Task was null for file: {0}", file);
|
||||
}
|
||||
//_tasks.Add(new ImageTask() { ImageName = file, TaskImage = t, Completed = false });
|
||||
//t.Start();
|
||||
|
||||
|
||||
|
||||
}
|
||||
s.Start();
|
||||
|
||||
await Task.WhenAll(tasks);
|
||||
|
||||
//Task.WhenAll(tasks).Start();
|
||||
s.Stop();
|
||||
//tt.RunSynchronously();
|
||||
MaddoLogger.Log("Finished: {0}, {1}", s.Elapsed, s.ElapsedMilliseconds);
|
||||
DialogHelper.PopUpAlert($"Finished: {s.Elapsed}, {s.ElapsedMilliseconds}", "message");
|
||||
}
|
||||
|
||||
|
||||
private async Task FileTask(string file)
|
||||
{
|
||||
MaddoLogger.Log("Starting task for image {0}", file);
|
||||
IImageProcessor i = new ImgSharpCreator();
|
||||
|
||||
//ImageCreator2 i = new ImageCreator2();
|
||||
i.Start(new FileInfo(file));
|
||||
return null;
|
||||
await Task.Run(() => i.Start(new FileInfo(file)));
|
||||
|
||||
|
||||
}
|
||||
|
||||
private void CompleteFile(string file)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue