예제 #1
0
        private void ShowCpuAffinity(string pThreadNumber)
        {
            CpuAffinity ca = new CpuAffinity();
            var         vm = new CpuAffinityViewModel();

            if (String.IsNullOrEmpty(_threadNumber))
            {
                vm.ThreadNumber = "0";
            }
            else
            {
                vm.ThreadNumber = _threadNumber;
            }

            vm.CalcCpuAffinity();
            ca.DataContext = vm;
            ca.ShowDialog();
        }
        public void Test1()
        {
            if (!RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
            {
                return;
            }

            var cpuMask = new BitMask(stackalloc ulong[512]);

            CpuAffinity.GetForCurrentProcess(cpuMask);

            int countTrue = 0;

            for (int i = 0; i < cpuMask.Count; ++i)
            {
                if (cpuMask[i])
                {
                    countTrue++;
                }
            }

            Assert.NotEqual(0, countTrue);
        }