private void RunExperimentOperation(ExperimentOperation experimentOperation) { if (experimentOperation == null) { return; } RunOperation(experimentOperation); }
private void ExperimentProcessingProc() { while (true) { ExperimentOperation experimentOperation = experimentQueue.Dequeue(); RunExperimentOperation(experimentOperation); } }
public ExperimentOperation LoadOperationTreeFromFile(string fileName) { FileStream fileStream = new FileStream(fileName, FileMode.Open); byte[] content = new byte[fileStream.Length]; fileStream.Read(content, 0, content.Length); string stringContent = Encoding.UTF8.GetString(content); ExperimentOperation experimentOperation = JsonConvert.DeserializeObject <ExperimentOperation>(stringContent); return(experimentOperation); }
public void SaveOperationTreeToFile(ExperimentOperation experimentOperation, string fileName) { JsonSerializerSettings settings = new JsonSerializerSettings() { Formatting = Formatting.Indented, }; string content = JsonConvert.SerializeObject(experimentOperation, settings); FileStream fileStream = new FileStream(fileName, FileMode.Create); byte[] bytesContent = Encoding.UTF8.GetBytes(content); fileStream.Write(bytesContent, 0, bytesContent.Length); fileStream.Close(); }
public bool RunNewExperiment(ExperimentOperation experimentOperation) { if (experimentQueue.Count != 0) { return(false); } experimentQueue.Enqueue(experimentOperation); threadCreatingMutex.WaitOne(); if (experimentProcessingThread == null) { experimentProcessingThread = new Thread(ExperimentProcessingProc); experimentProcessingThread.IsBackground = true; experimentProcessingThread.Start(); } threadCreatingMutex.ReleaseMutex(); return(true); }