Changeset 7201 for trunk/sources/HeuristicLab.Clients.Hive/3.3/HiveJobs
- Timestamp:
- 12/19/11 03:17:35 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Clients.Hive/3.3/HiveJobs/HiveTask.cs
r7192 r7201 40 40 protected ReaderWriterLockSlim childHiveTasksLock = new ReaderWriterLockSlim(LockRecursionPolicy.SupportsRecursion); 41 41 42 public static new Image StaticItemImage { 43 get { return HeuristicLab.Common.Resources.VSImageLibrary.Event; } 44 } 42 45 public override Image ItemImage { 43 46 get { … … 52 55 else if (task.State == TaskState.Failed) return HeuristicLab.Common.Resources.VSImageLibrary.Error; 53 56 else if (task.State == TaskState.Finished) return HeuristicLab.Common.Resources.VSImageLibrary.ExecutableStopped; 54 else return HeuristicLab.Common.Resources.VSImageLibrary.Event;57 else return base.ItemImage; 55 58 } 56 59 } … … 120 123 hiveJob.IsControllable = value; 121 124 } 122 } finally { 125 } 126 finally { 123 127 childHiveTasksLock.ExitReadLock(); 124 128 } … … 134 138 try { 135 139 return childHiveTasks.AsReadOnly(); 136 } finally { childHiveTasksLock.ExitReadLock(); } 140 } 141 finally { childHiveTasksLock.ExitReadLock(); } 137 142 } 138 143 } … … 193 198 try { 194 199 this.childHiveTasks = cloner.Clone(original.childHiveTasks); 195 } finally { original.childHiveTasksLock.ExitReadLock(); } 200 } 201 finally { original.childHiveTasksLock.ExitReadLock(); } 196 202 this.syncTasksWithOptimizers = original.syncTasksWithOptimizers; 197 203 this.isFinishedTaskDownloaded = original.isFinishedTaskDownloaded; … … 242 248 try { 243 249 this.childHiveTasks.Add(hiveTask); 244 } finally { childHiveTasksLock.ExitWriteLock(); } 250 } 251 finally { childHiveTasksLock.ExitWriteLock(); } 245 252 } 246 253 … … 359 366 } 360 367 return jobs; 361 } finally { childHiveTasksLock.ExitReadLock(); } 368 } 369 finally { childHiveTasksLock.ExitReadLock(); } 362 370 } 363 371 … … 373 381 } 374 382 return null; 375 } finally { childHiveTasksLock.ExitWriteLock(); } 383 } 384 finally { childHiveTasksLock.ExitWriteLock(); } 376 385 } 377 386 … … 390 399 return result; 391 400 } 392 } finally { childHiveTasksLock.ExitReadLock(); } 401 } 402 finally { childHiveTasksLock.ExitReadLock(); } 393 403 } 394 404 return null; … … 405 415 child.RemoveByTaskId(jobId); 406 416 } 407 } finally { childHiveTasksLock.ExitWriteLock(); } 417 } 418 finally { childHiveTasksLock.ExitWriteLock(); } 408 419 } 409 420 … … 458 469 HiveServiceLocator.Instance.CallHiveService(s => s.PauseTask(child.task.Id)); 459 470 } 460 } finally { childHiveTasksLock.ExitReadLock(); } 471 } 472 finally { childHiveTasksLock.ExitReadLock(); } 461 473 } else { 462 474 HiveServiceLocator.Instance.CallHiveService(s => s.PauseTask(this.task.Id)); … … 471 483 HiveServiceLocator.Instance.CallHiveService(s => s.StopTask(child.task.Id)); 472 484 } 473 } finally { childHiveTasksLock.ExitReadLock(); } 485 } 486 finally { childHiveTasksLock.ExitReadLock(); } 474 487 } else { 475 488 HiveServiceLocator.Instance.CallHiveService(s => s.StopTask(this.task.Id));
Note: See TracChangeset
for help on using the changeset viewer.