- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
bool exit = false;
while (!exit)
{
if (Console.KeyAvailable)
{
ConsoleKeyInfo key = Console.ReadKey(true);
exit = true;
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+135
bool exit = false;
while (!exit)
{
if (Console.KeyAvailable)
{
ConsoleKeyInfo key = Console.ReadKey(true);
exit = true;
}
}
Православная замена Console.ReadKey();
Во всем прошу винить консоль.
Остаюсь, Ваш Стертор.
Кстати, это ведь написано под кодом!
Да это понятно... Но кто тогда думал о кошерности решений... Писать было весело, код работал, что еще надо школьнику для счастья ;) А конвертить прерывания в ивенты я тогда не догадался.
Вот и клепал я тогда busy wait... На тетрис и змейку вполне хватало, клавиши не пропускались.
Я конвертить и не имел в виду, ловить - там где по другому нельзя (дос), подписываться на события - там где можно.
У нас на 486 в танчиках пропускались, внезапно. Потом второй чел их доделал - там даже телефраг на респе был.
Помню я подход главного цикла, когда надо было:
опросить клаву
пересчитать
перерисовать
> и параллельно с опросом клавы надо было делать какие-то другие задачи
и все-таки последовательно
> на загрузку проца было пофиг
ну загрузка проца была только на слабых машинах, а так еще надо было высчитывать и задержку, чтобы при этом еще обеспечивать плавность анимации (или скипать кадры, если задержались, потому крутые игры иногда подлагивали)
между прочим, прерывания частенько усложняли задачу, бо машины были однопоточные, и настолько слабые, что писать событийно-ориентированную субсистему было дороговато. например, на 7Гц-овых Спекки с музыкальным сопроцессором фоновую музыку играли, используя официально признанные неработающими из-за бага прерывания 2ого типа (IM2), и там уже приходилось обработчик делать ОЧЕНЬ быстрым, т.к. прерывания были не точно, а примерно 50 раз в секунду. Приходилось хорошо рассчитывать такты, надеясь на задержку до следующего прерывания HALT
Сложнее, наверное, было только рассчитывать такты для написания нестандартного загрузчика с магнитной ленты, т.к. там погрешность была недопустима (особенно, когда магнитофонные пасики растягивались, и для успешной загрузки "оригинальной" игры с таким загрузчиком приходилось регулировать скорость воспроизведения отверткой = ) )
как это понимает машина
как это раньше было сложно
как теперь стало проще
почему современный Программист - более Архитектор, нежели Кодер.
оффтоп: я еще пользовался гибкими 5, 25'' дискетами, и даже перфокарты (не пользовался) держал в руках.
Признай, что байтоебство того времени - средство для достижения цели и была бы у тебя возможность - ты бы пердолинг нахуй послал.
но зато я понимаю, как лучше сделать так, чтобы и машине легче, и не в ущерб читаемости, и почему.
да и вообще, ностальгия. это почти как у скрипткидди - считаешь себя крутым, а на самом деле напильником высекал дом. олдфаги любят о таком поговорить и пустить скупую мужскую слезу.
А ещё где-то валяется один бит советской памяти, на феррите и катушке диаметром с рублёвую монету.
)
Как это звучит!
Я обеими руками за Советскую власть, но идиотизма у них тоже было немало.
Просвятись http://lib.rus.ec/b/256723
Православная копия без регистрации и смс: http://flibusta.net/b/219485
Вот что за хрень, поле ввода серое, в нем невыделяемый текст, пока не нажмешь ctrl+f5
про загубленное русское село и страдания сидельцев?
Докажи.
> я из Владикавказа
Proof or GTFO.
)
Вот в этом и есть вся лажа (см. анкету), в выкладывание фоток в сеть. Подставил не только себя, но и этих парней.
и есть кнопка "пожаловаться на спам"