0 / 0 / 0
Регистрация: 19.07.2014
Сообщений: 2
|
||||||
1 | ||||||
.NET 4.x Оптимизация опрашивания нажатых клавиш (user32.dll)19.07.2014, 16:28. Показов 1418. Ответов 4
Метки нет (Все метки)
Здравствуйте. Я написал программу, которая, по нажатию на определенные кнопки клавиатуры (даже если форма находится вне фокуса), считывает позицию курсора, а также выполняет автоспиннинг (крутит мышкой по кругу). Все, вроде бы, неплохо работает, но приложение грузит процессор на 25% постоянно. Для опрашивания нажатых клавиш я использую отдельный поток. Как можно оптимизировать мой код, чтобы проц так сильно не грузило?
0
|
19.07.2014, 16:28 | |
Ответы с готовыми решениями:
4
Получение клавиш нажатых не в своем приложении Перехват нажатых клавиш без использования хуков Problems with user32.dll SetClipboardData (user32.dll) bitmap |
Почетный модератор
|
|
19.07.2014, 18:13 | 2 |
Поставить хук на клавиатуру WH_KEYBOARD_LL.
Блокировать флажок на клавиатуре
1
|
Кодогенератор
200 / 200 / 51
Регистрация: 15.06.2011
Сообщений: 794
|
|
20.07.2014, 02:37 | 3 |
1
|
0 / 0 / 0
Регистрация: 19.07.2014
Сообщений: 2
|
|
20.07.2014, 10:48 [ТС] | 4 |
Действительно, с паузой в 10мс процессор перестало грузить, но появились значительные задержки при включении/выключении автоспиннинга. Поэтому поставил 2 мс. В диспетчере задач как и при 10мс показывает 0% нагрузка на ЦП, задержки вроде не появляются.
0
|
Кодогенератор
200 / 200 / 51
Регистрация: 15.06.2011
Сообщений: 794
|
|
20.07.2014, 21:12 | 5 |
без задержки поток грузит полностью ядро скорее всего, или просто бесполезно выжирает выделяемое ему время. Пауза дает возможность использовать простой на более полезные нужды. ее можно поставить и 1мс - если поток особо не трудоемкий то тоже норм будет.
0
|
20.07.2014, 21:12 | |
20.07.2014, 21:12 | |
Помогаю со студенческими работами здесь
5
Надстройка для user32.dll SendInput() (user32.dll) работает с разными приложениями по разному User32.dll FindWindow откуда взять первый аргумент? Не работает GetLastInputInfo из user32.dll: время увеличивается несмотря на активность устройств ввода Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |