This commit is contained in:
Maddo 2017-09-22 14:43:42 +02:00
commit 40f25a4f4c
2 changed files with 82 additions and 28 deletions

@ -1 +1 @@
Subproject commit d9b6b42b847a86423577b66a74320fe90669fc2e Subproject commit 5987cc26521d839bf81bdaab19d101488294da19

View file

@ -87,45 +87,99 @@ namespace WPFCatalog
//private List<ImageTask> _tasks; //private List<ImageTask> _tasks;
private async void Start() private async void Start()
{ {
Task outerTask = new Task(() => //Task outerTask = new Task(() =>
{ //{
var tasks = new List<Task>(); // Stopwatch s = new Stopwatch();
// todo folder mode
MaddoLogger.Log("Starting elaboration"); // var tasks = new List<Task>();
foreach (var file in Directory.EnumerateFiles(PicSettings.DirectorySorgente)) // // todo folder mode
{ // MaddoLogger.Log("Starting elaboration");
//Task t = new Task(() => // foreach (var file in Directory.EnumerateFiles(PicSettings.DirectorySorgente))
//{ // {
// //Task t = new Task(() =>
// //CompleteFile(file); // //{
//});
tasks.Add(FileTask(file)); // // //CompleteFile(file);
//_tasks.Add(new ImageTask() { ImageName = file, TaskImage = t, Completed = false }); // //});
//t.Start(); // 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();
Task.WhenAll(tasks).Start();
//tt.RunSynchronously(); // await Task.WhenAll(tasks);
MaddoLogger.Log("Finished");
DialogHelper.PopUpAlert("Finished", "message");
});
// Task.WhenAll(tasks).Start();
outerTask.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); MaddoLogger.Log("Starting task for image {0}", file);
IImageProcessor i = new ImgSharpCreator(); IImageProcessor i = new ImgSharpCreator();
await Task.Run(() => i.Start(new FileInfo(file)));
//ImageCreator2 i = new ImageCreator2();
i.Start(new FileInfo(file));
return null;
} }
private void CompleteFile(string file) private void CompleteFile(string file)