public MyLocalSimulation() { m_threadPool = new MyThreadPool(MyKernelFactory.Instance.DevCount, InitCore, ExecuteCore); m_threadPool.StartThreads(); try { ExecutionPlanner = new MyDefaultExecutionPlanner() { PlanSignalTasks = true }; PartitioningStrategy = new MyAllInOneGPUPartitioning(MyKernelFactory.Instance.DevCount, 0); CurrentDebuggedBlocks = new MyExecutionBlock[MyKernelFactory.Instance.DevCount]; } catch (Exception e) { m_threadPool.Finish(); throw e; } }