Я хочу использовать циклы дополнительных циклов, чтобы сделать некоторые из моих собственных обработок, и мне было интересно, может ли кто-нибудь указать мне в правильном направлении, как начать на этом?Я хочу дублировать Folding (использовать дополнительные cpu-циклы)
ответ
Я бы предложил написать программу, которая работает непрерывно (убедитесь, что она блокируется изредка), а затем просто устанавливая ее на низкий приоритет. Планировщик ОС (Windows/* nix) должен обрабатывать все остальное автоматически.
Вы можете использовать дополнительные циклы процессора, написав программу, которая работает в фоновом режиме.
Вы можете проверить использование ЦП, чтобы узнать, когда компьютер находится в режиме ожидания (но это не обязательно хорошая идея), или вы можете слушать активность мыши/клавиатуры.
Чтобы проверить загрузку процессора в C#, используйте следующий код:
float cpuUsage; //Between 0 and 100
using (var cpu = new PerformanceCounter("Processor", "% Processor Time", "_Total")) {
cpu.NextValue(); //First call gives wrong values
cpuUsage = cpu.NextValue();
}
Для проверки наличия клавиатуры или мыши деятельности, вы должны будете использовать крюк клавиатуры/мыши; см. here для получения инструкций.
Записать заявку. Задайте приоритеты потока для «фона». Job done;)
Я бы посоветовал не проверять использование ЦП, так как этот опрос сам берет процессор. –