Changeset 14253 for branches/thasling/DistributedGA/DistributedGA.Hive
- Timestamp:
- 08/12/16 13:30:41 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/thasling/DistributedGA/DistributedGA.Hive/P2PMigrationAnalyzer.cs
r14252 r14253 28 28 using DistributedGA.Core.Implementation; 29 29 using DistributedGA.Core.Interface; 30 using DistributedGA.Core.Util; 30 31 using DistributedGA.Hive; 31 32 using HeuristicLab.Common; … … 119 120 Parameters.Add(new ValueParameter<StringValue>("JobGUID", "", new StringValue(Guid.NewGuid().ToString()))); 120 121 Parameters.Add(new ValueParameter<ILog>("Log", "The log", new Log(1000))); 122 Parameters.Add(new ValueParameter<IntValue>("ByteArraysAllocated", new IntValue(0))); 123 Parameters.Add(new ValueParameter<IntValue>("ByteArraysFreed", new IntValue(0))); 124 Parameters.Add(new ValueParameter<IntValue>("ByteArraysAlive", new IntValue(0))); 121 125 122 126 var validValues = new ItemSet<EnumValue<MigrationStrategy>>(); … … 145 149 var communicationRate = ((PercentValue)Parameters["CommunicationRate"].ActualValue).Value; 146 150 var messageCacheCapacity = ((IntValue)Parameters["MessageCacheCapacity"].ActualValue).Value; 147 h.Init(lanIpPrefix, contactServerUri, problemInstance, (int)(100 * messageCacheCapacity), (int)(100 * communicationRate));151 h.Init(lanIpPrefix, contactServerUri, problemInstance, messageCacheCapacity, (int)(100 * communicationRate)); 148 152 h.ExceptionOccurend += ExceptionThrown; 149 153 } … … 221 225 HeuristicLab.Persistence.Default.Xml.XmlGenerator.Serialize(msgScope, stream); 222 226 message = stream.GetBuffer(); 223 h.PublishDataToNetwork( message);227 h.PublishDataToNetwork(ByteArrayWrapper.CreateByteArrayWrapper(message)); 224 228 } 225 229 } … … 230 234 // recieve 231 235 var message = h.GetDataFromNetwork(); 232 List<KeyValuePair<PeerInfo, byte[]>> immigrants = new List<KeyValuePair<PeerInfo, byte[]>>();236 List<KeyValuePair<PeerInfo, ByteArrayWrapper>> immigrants = new List<KeyValuePair<PeerInfo, ByteArrayWrapper>>(); 233 237 //limit number of immigrants to use 234 238 if (noOfEmigrants < message.Count) { … … 264 268 var qualityTranslatedName = QualityParameter.TranslatedName; 265 269 foreach (var msg in immigrants) { 266 using (var stream = new MemoryStream(msg.Value )) {270 using (var stream = new MemoryStream(msg.Value.Array)) { 267 271 var immigrantScope = HeuristicLab.Persistence.Default.Xml.XmlParser.Deserialize<IScope>(stream); 268 272 … … 290 294 291 295 MigrationIterations.Value++; 296 297 ((IValueParameter<IntValue>)Parameters["ByteArraysAllocated"]).Value.Value = ByteArrayWrapper.AllocatedCounter; 298 ((IValueParameter<IntValue>)Parameters["ByteArraysFreed"]).Value.Value = ByteArrayWrapper.FreedCounter; 299 ((IValueParameter<IntValue>)Parameters["ByteArraysAlive"]).Value.Value = ByteArrayWrapper.AliveCounter; 300 292 301 return base.Apply(); 293 302 }
Note: See TracChangeset
for help on using the changeset viewer.