crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> запуск слота с большой частотой
borune
  опции профиля:
сообщение 15.11.2013, 11:21
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 152
Регистрация: 1.1.2011
Пользователь №: 2314

Спасибо сказали: 0 раз(а)




Репутация:   0  


судари, помогите пожалуйста, такой вопрос. Нужно вызывать слот с частотой, большей 1 Гц. Если я правильно понимаю, QTimer::singleShot не позволяет этого сделать, так как минимальная задержка там 1 мс. Как решить задачу?

Сообщение отредактировал borune - 15.11.2013, 13:17
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Trisch
  опции профиля:
сообщение 15.11.2013, 13:49
Сообщение #2


Активный участник
***

Группа: Участник
Сообщений: 379
Регистрация: 30.1.2012
Из: Запорожье
Пользователь №: 3169

Спасибо сказали: 24 раз(а)




Репутация:   0  


Насколько я помню 1Гц это частота колебаний системы с периодом в 1 с. То есть максимально вы можете задать чистоту в 1кГц. Вам этого мало?

Сообщение отредактировал Trisch - 15.11.2013, 13:53
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
borune
  опции профиля:
сообщение 15.11.2013, 14:45
Сообщение #3


Участник
**

Группа: Участник
Сообщений: 152
Регистрация: 1.1.2011
Пользователь №: 2314

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(Trisch @ 15.11.2013, 14:49) *
То есть максимально вы можете задать чистоту в 1кГц. Вам этого мало?

да, я опечатался в первом посте, забыл букву К, мне нужно 1.5-2 КГц.


Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 15.11.2013, 16:52
Сообщение #4


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


под какие системы нужно решение?
boost::thread + boost::chrono дают возможность на венде получать интервалы до 100-200 мкс, под линём - где-то порядка 10-20 мкс. это на средненьком компе.

Сообщение отредактировал Iron Bug - 15.11.2013, 16:54
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
borune
  опции профиля:
сообщение 16.11.2013, 19:04
Сообщение #5


Участник
**

Группа: Участник
Сообщений: 152
Регистрация: 1.1.2011
Пользователь №: 2314

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(Iron Bug @ 15.11.2013, 17:52) *
под какие системы нужно решение?
boost::thread + boost::chrono дают возможность на венде получать интервалы до 100-200 мкс, под линём - где-то порядка 10-20 мкс. это на средненьком компе.

а средствами qt никак нельзя обойтись?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 19.11.2013, 13:17
Сообщение #6


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(borune @ 16.11.2013, 21:04) *
а средствами qt никак нельзя обойтись?
В Qt нет необходимости в высокой частоте вызова слотов.

Это вообще что-то из разряда ОС-ек реального времени.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kuzulis
  опции профиля:
сообщение 19.11.2013, 14:10
Сообщение #7


Активный участник
***

Группа: Участник
Сообщений: 393
Регистрация: 29.6.2009
Пользователь №: 862

Спасибо сказали: 36 раз(а)




Репутация:   7  


Хотя, в винде есть что-то похожее на реалтайм для мультимедиа (но это доступно от Виста и выше), см. к примеру:

http://msdn.microsoft.com/en-us/library/wi...v=vs.85%29.aspx

Но это так, просто информация к размышлению.

Сообщение отредактировал kuzulis - 19.11.2013, 14:10
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.3.2024, 19:19