Я создаю приложение GStreamer на основе XULRunner. Для этого был создан компонент XPCOM, который делает некоторые функции GStreamer доступными в приложении XUL. Однако GStreamer обычно использует цикл сообщений (GMainLoop), который позволяет получать сообщения шины. Поскольку XULRunner уже имеет свой собственный цикл сообщений, я не могу создать GMainLoop. Поэтому мне нужен другой способ получения этих сообщений. Одним из способов является использование вызова gst_bus_poll. Мне нужно было бы вызывать его часто, чтобы предотвратить переполнение очереди сообщений. Поэтому я думаю, что таймер является правильным решением здесь.
Короче говоря: как создать таймер в компоненте XPCOM?