public DirectorNodeService(string TAG, IEnumerable <NodeName> allNodeNames, INodeProxyProvider proxyProvider, DCEPSettings settings) { this.TAG = TAG + "[DirectorNodeService] "; this.allNodeNames = allNodeNames; this.settings = settings; this.localNodeCanTerminate = false; if (settings.duration != 0) { this.durationMS = settings.timeUnit.GetTimeSpanFromDuration(settings.duration).TotalMilliseconds; } experimentRunMessageQueue = new SerializableQueue <ExperimentRunNodeDataMessage>(); nodesToWaitWithStartingFor = new HashSet <NodeName>(allNodeNames); systemState = NodeExecutionState.WaitForStart; lastReadyToTerminateSignalTime = new Dictionary <NodeName, double>(); experimentRunDataByNodeName = new Dictionary <NodeName, ExperimentRunData>(); foreach (var nodeName in allNodeNames) { lastReadyToTerminateSignalTime[nodeName] = -1; experimentRunDataByNodeName[nodeName] = null; } this.proxyProvider = proxyProvider; Thread t = new Thread(new ThreadStart(threadStartMethod)); t.Start(); }
private void CheckInitialize(SerializedProperty property, GUIContent label) { if (_Queue == null) { var target = property.serializedObject.targetObject; _Queue = fieldInfo.GetValue(target) as SerializableQueue <T>; if (_Queue == null) { _Queue = new SerializableQueue <T>(); fieldInfo.SetValue(target, _Queue); } _Foldout = EditorPrefs.GetBool(label.text); } }
public DCEPNode(NodeName name, string[] inputlines, DCEPSettings settings) { TAG = "[" + name + "] "; Console.WriteLine(TAG + "DCEPNode Constructor called."); state = NodeExecutionState.WaitForStart; receivedEventCount = 0; sentReadyToStartMessage = false; nodeName = name; externalEventQueue = new SerializableQueue <AbstractEvent>(); internalEventQueue = new SerializableQueue <AbstractEvent>(); controlMessageQueue = new SerializableQueue <DCEPControlMessage>(); queryProcessors = new List <QueryProcessor>(); this.settings = settings; executionPlan = new ExecutionPlan(inputlines); benchmarkMeter = new BenchmarkMeter(settings, nodeName); createQueryProcessors(executionPlan.queriesByNodeName[nodeName]); }
private void loadFromFileButton_Click(object sender, EventArgs e) { // Creating new XmlSerializer of the type of the queue var serializer = new XmlSerializer(typeof(SerializableQueue <Order>)); // Creating new stream writer into the file with name _filename var stream = new FileStream(_filename, FileMode.Open); // Deserializing the queue with orders _orders = (SerializableQueue <Order>)serializer.Deserialize(stream); // Closing stream stream.Close(); // Filling list box with items queueListBox.Items.Clear(); foreach (var order in _orders) { queueListBox.Items.Add(order.Name + " " + order.Amount.ToString()); } }