private void btnBuild_Click(object sender, System.EventArgs e) { var folders = new List<string>(); foreach (var s in SettingsController.GetWatchedFoldersAsArray()) { folders.AddRange(FileFetcher.GetFoldersWithVideoFiles(s)); } var folders1 = new List<string>(folders); var i = ((folders.Count)/2); folders.RemoveRange(0, i); folders1.RemoveRange((folders1.Count) / 2, (folders1.Count) / 2); var sema = new Semaphore(); var adfilm = new AddFilms(lblCurrentTaskObject, sema, lblCurrentTask,this); var dbbt = new DatabaseBuildThread(folders, lblCurrentTaskObject, sema, adfilm, lblCurrentTask); var dbbt1 = new DatabaseBuildThread(folders1, lblCurrentTaskObject, sema, adfilm, lblCurrentTask); lblCurrentTaskObject.Visible = true; lblCurrentTaskObject.Text = ""; var dbbtThread = new Thread(dbbt.Run); var dbbtThread1 = new Thread(dbbt1.Run); var afThread = new Thread(adfilm.Run); dbbtThread.Start(); dbbtThread1.Start(); afThread.Start(); }
public DatabaseBuildThread(List<string> folders, Label label, Semaphore semaphore, AddFilms addfilms, Label taskLabel) { _folders = folders; _addFilms = addfilms; _taskLabel = taskLabel; _semaphore = semaphore; _label = label; Films = new List<Film>(); Errors = new List<Film>(); }