Как стать автором
Обновить
19
0.1
Иван @dead_man

Программист

Отправить сообщение

позвольте уточнить, все эти расчёты и выводы были сделаны по результатам опроса 15 человек?

занимаюсь переводом тех самых парсерных квестов. не всё так плохо на самом деле, вполне играбельно и проходимо

Мой топ:
Гугл: перестают работать стрелки, если выбрать что-нибудь из выпадающего списка. Вообще когда сайт не ориентирован на работу через клавиатуру - раздражает
Подмена Ctrl+C. Иногда текст вообще не копируется или копируется не так или добавляется ссылка на сайт
Уже начали делать подмену Ctrl+F :'(
Исходный код без отступов
Отключение выделения текста, либо какие-то побочные реакции после выделения

поставил плюс. спасибо за проект, будет интересно поковырять. не слушайте хейтеров и диванных экспертов. удачи!

без проблем)

DateTime lastTime;

Timer timer = new Timer();
timer.Elapsed += Timer_Elapsed;
timer.Interval = 15; // Мы знаем что меньше 15мс ставить бессмысленно
lastTime = DateTime.UtcNow;
timer.Start();

private void Timer_Elapsed(object sender, ElapsedEventArgs e)
{
    var dt = DateTime.UtcNow;
    int diff = (int)((dt - lastTime).TotalMilliseconds);
    
    // обрабатываем события за прошедшее время diff миллисекунд
    
    lastTime = dt;
}

наверное не поняли. системное время никуда не уплывёт. если у вас будет задержка, то в следующей итерации отработают все пропущенные события. а использование таймера, который может плавать, и счетчика как раз может дать погрешность

спасибо за статью, очень интересно и грамотно всё расписано.

есть вопрос по поводу реализации MIDI проигрывателя. я как-то делал свой, только для MS-DOS, и опирался там на время, которое прошло между последней обработкой событий и текущим. почему тут нельзя было реализовать аналогичным образом?

очень интересно, как вы собираете метрики служб?

Проблема не в null, а в том, что мы не видим имен аргументов. В последнем варианте можно так же спросить про строки, не видно же что каждая значит. Нагляднее (и более гибким) был бы такой вариант:


insertDiscount(new Discount()
    .setName('Discount name')
    .setDescription('Discount description')
    .setAmount(100, 'CAD')
    .setActive()
)
Но OPL2 это не MIDI
Возможно по этой причине у меня все подвисало при отправке одного регистра за раз. Сейчас по 16 и норм. Не думали о нескольких командах в одной посылке?
Я к сожалению не знаю размер заголовков у посылок. Скорость USB 1.0 = 12 мегабит. Полезная нагрузка 33 байта. Если размер каждого пакета к примеру 33+100, то мы получим 11 тысяч запросов в секунду. Но тут еще надо учесть скорость обработки запросов операционкой. В текущей реализации все успевает отправляться на самых быстрых треках

Информация

В рейтинге
3 127-й
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность