170 похожих чатов

Как можно реализовать такую логику? package main import (

"fmt"
)


func main() {
for true {
if key.Pressed('p') {
// Do some work
} else if key.Pressed('s'){
fmt.Println('exit')
return
}
}
}

10 ответов

41 просмотр
️Skill- Автор вопроса

https://github.com/eiannone/keyboard не помог, там все останавливается пока не нажмешь какую-нибудь кнопку

️Skill- Автор вопроса
Владимир Гришин
а вам что нужно?

чтобы как бы в фоне проверял

️Skill- Автор вопроса
LightStar
обернуть в go func() {...}()

так? не работает for true { go func(){ _, key, _ := keyboard.GetKey() fmt.Println(key) }() fmt.Println("test") }

️Skill
так? не работает for true { go func(){ _, ke...

for тоже нужно обернуть. плюс программа не должна завершаться, т.е. нужна какая-то работа на переднем плане. почитайте про goroutines

️Skill- Автор вопроса
LightStar
for тоже нужно обернуть. плюс программа не должна ...

вообще у меня немного другая задача, есть workerpool, нужно его поставить на паузу, через время продолжить работу, но так как keyboard.GetKey() ждет пока нажмется кнопка, воркер пулл ничего не делает вот здесь я спрашивал, последний коммент от меня https://github.com/gammazero/workerpool/issues/42

️Skill
вообще у меня немного другая задача, есть workerpo...

Явно нужно решение с использованием каналов. В один отправлять данные для workpool'а, во-второй - нажатия клавиш, и соответственно goroutin'ы для каждого. А в главной программе с помощью select получать данные из этих каналов и выполнять уже действия с workpool'ом

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта