private static void LoadProcessorAffinity(Dictionary<string, string> optimizations)
{
if (optimizations.ContainsKey("ProcessorAffinity"))
{
ulong value;
if (ulong.TryParse(optimizations["ProcessorAffinity"], out value))
{
if (value > 0)
{
Process.GetCurrentProcess().ProcessorAffinity = (IntPtr)(long)value;
Log.Publish(MessageLevel.Info, "Enable Optimization", "Processor Affinity set to " + Process.GetCurrentProcess().ProcessorAffinity.ToInt64().ToString("X"));
}
else
{
Log.Publish(MessageLevel.Warning, "Parsing Error", "Processor Affinity cannot be zero");
}
}
else
{
Log.Publish(MessageLevel.Warning, "Parsing Error", "Unrecognized option for ProcessAffinity: " + optimizations["ProcessorAffinity"]);
}
}
}