Как Вы используете AIO и epoll вместе в единственном цикле событий?

Я сделал что-то подобное Вашей идее однажды, и это было очень успешно, хотя я подозреваю, что это - действительно больше тестирования системы, чем модульный тест. Поскольку Вы предлагаете, чтобы Ваш генератор случайных чисел был отобран с тем же значением и должен произвести идентичную последовательность каждый раз. Игра работала на циклах на 50 Гц, таким образом синхронизирование не было проблемой. У меня была система, которая запишет щелчки мышью и местоположения, и использовала это для ручной генерации 'сценария', который мог быть воспроизведен для приведения к тем же результатам. Путем удаления задержек синхронизации и выключения графическое поколение час геймплея мог копироваться через несколько секунд. Самая большая проблема состояла в том, что изменения в игровом дизайне будут делать недействительным сценарий.

, Если Ваша базовая комната содержала логику, которая была независима от общей игровой игры тогда, она могла работать очень хорошо. Механизм мог запустить без любого ui и запустить сценарий, как только инициализация завершена. Тестирование на катастрофический отказ по пути было бы простыми, но более сложными тестами, такими как отъезд символов в правильных положениях, будет более сложным. Если запись сценариев достаточно проста, который они были в моей системе, то они могут быть обновлены очень легко, и специальные сценарии для тестирования специализированного поведения могут быть настроены очень быстро. Моя система имела добавленное преимущество, что это могло использоваться во время игрового тестирования и точной последовательности событий, зарегистрированных для создания устранения ошибки легче.

9
задан Will 1 December 2009 в 12:06
поделиться

3 ответа

попробуйте libevent:

http://www.monkey.org/~provos/libevent/

есть исправления для поддержки обоих.

5
ответ дан 4 December 2019 в 21:50
поделиться

Пробовали eventfd с epoll?

«Ключевым моментом в файловом дескрипторе eventfd является то, что его можно просто отслеживать как и любой другой файловый дескриптор, используя select (2), poll (2) или epoll (7). "

1
ответ дан 4 December 2019 в 21:50
поделиться

вы можете увидеть http://www.xmailserver.org/eventfd-aio-test.c для примера aio и eventfd

3
ответ дан 4 December 2019 в 21:50
поделиться
Другие вопросы по тегам:

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