![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| CYBERDREAM |
|
|||
![]() I think, there4 I am ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1096 Регистрация: 31.10.2006 Где: CyberLand Репутация: нет Всего: 28 |
Приветствую всех.
В моей программе в бесконечном цикле считываются данные с внешнего устройства в некоторый массив. После каждого считывания счетчик обнуляется, а когда счетчик доходит до 5 секунд мне нужно передать данные в файл и обнулить массив.
Проблема состоит в том, что данные считываются тоже с периодичностью таймера, как сделать чтобы они паралелльно работали (таймер и считывание) -------------------- Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно) Telegram, skype: kuchuk.artiom |
|||
|
||||
| SenkraD |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 3.2.2006 Где: Украина::Киев Репутация: 4 Всего: 23 |
1. CYBERDREAM, а обьекты синхронизации использовать пробовал?
Если у тебя запись и считывание в разных потоках, то очевидно самый правильный способ решения проблемы 2. У тебя проходит не 5 секунд а полсекундыи то не факт (задай необходимый интервал, при создании таймера) 3. В твоём случае использовать таймер на основе функции SetTimer, не то - наверное, лучше использовать CreateWaitableTimer: она создаст таймер, который будет обьектом ядра, что даёт тебе больше гарантий |
|||
|
||||
| CYBERDREAM |
|
|||
![]() I think, there4 I am ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1096 Регистрация: 31.10.2006 Где: CyberLand Репутация: нет Всего: 28 |
если использовать CreateWaitableTimer, будет ли считывание идти паралельно работе таймера, или последний будет притормаживать процесс.
-------------------- Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно) Telegram, skype: kuchuk.artiom |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 8 Всего: 154 |
CYBERDREAM, если вынесешь считывание в параллельный поток то не будет.
|
|||
|
||||
| CYBERDREAM |
|
|||
![]() I think, there4 I am ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1096 Регистрация: 31.10.2006 Где: CyberLand Репутация: нет Всего: 28 |
Можно поинтерисоваться каким образом это осуществить, я с winapi туго очень... нет времени пока что заняться им.
-------------------- Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно) Telegram, skype: kuchuk.artiom |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 7 Всего: 118 |
а почему бы не организовать кальцевую очередь и сразу в одном потоке писать данные в нее, в другом выбирать... хотя хочется с таймерами если Ы... msdn вам в помошь...
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| CYBERDREAM |
|
|||
![]() I think, there4 I am ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1096 Регистрация: 31.10.2006 Где: CyberLand Репутация: нет Всего: 28 |
У меня нет требования жестко таймер сделать. Мне главное чтобы после каждого считывания метки счетчик (по секундный) обнулялся и начинал заново считать, и после 5 секундного простоя сработало некоторое событие. А в данном случае таймер тормозит процесс считывания.
jonie, можешь кусок кода привести? -------------------- Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно) Telegram, skype: kuchuk.artiom |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 8 Всего: 154 |
Создай поток, в котором выполнялась бы ф-я:
Тут не хватает только нормального завершения потока. Его можно сделать через событие или сообщение. |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 7 Всего: 118 |
http://rk6.bmstu.ru/electronic_book/posapr...npo/Ochered.htm а вообще игра змейка поможет ) -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |