Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 | 2 | 3 |

 

  Вопрос: Пауза потоков Добавлено: 15.03.11 21:59  

Автор вопроса:  andrey | ICQ: 305986093 

Ответить

  Ответы Всего ответов: 37  

Номер ответа: 31
Автор ответа:
 andrey



ICQ: 305986093 

Вопросов: 3
Ответов: 41
 Профиль | | #31 Добавлено: 19.03.11 17:27
Artyom
Спасибо огромное, не которые термины не совсем понятны, но в целом понял ))!
Вот штука какая, нужно на протяжении движения датчика снимать температуру, и импульсы (они будут говорить на какой длине находится датчик), это, что касается эксперимента, попутно снимаются электрические показатели. Всего 4 порта, на 3 весит по одному прибору, на 4 8 блоков, из которых один показывает те самые нужные импульсы (так важные, чтоб знать на какой длине была снята температура), естественно на 4 порту опрос идет поочередный, т.к. там висят и сигнализирующее и управляющие блоки, на посылку - ответ только одному блоку уходит около 15-16 мс. (без обработки ответа).
Как я понимаю работу программы, прога работает, читая код, слева на право, сверху в низ, та же беда и с таймерами, то есть пока одно приложение не выполнится, другое не начнется?! Много поточность вроде как позволяет ускорить, в данном случае, общение с портами, т.к. потоки между собой переключаются.? Вот, как-то так, из-за того, что так необходимый датчик импульсов весит еще с 7 блоками, а движется он не медленно, я и решил воспользоваться помощью потоков.
Могу предположить что где-то в начале стека стоит обработчик ошибок try с пустым блоком catch

Так и есть, блок имеется, для пробного эксперимента я код в нем забиндил, но я с исходника запускаю прогу, включаю потоки, а 3 из 4 не включаются, не какое событие в них не происходит, но состояние при этом имеют Stopped, как???? А повторный запуск решает проблему, но я то понимаю, что где-то собака зарыта, и это не хрена не правильно!
если порт используется одновременно несколькими потоками,

не на каждый порт свой поток, плюс в потоках и обработка ответа.

p.s. Artyom прав, я сюда не затем, пришел, чтоб поливать друг друга, приношу свои извинения всем кто был оскорблен!!!
Artyom я тут по форуму полазил, вывод сделал, грамотный вроде как человек )), и выдержанный не подается на провокации, не то, что я))), молодец!

Мужики MSDN, мсдеэном, справочники, справочниками)), информация поверхностная, и в некоторых случаях не дает мне всего понимания, в том числе, что и где лучше использовать, книжек для чайников у меня до хрена))), но там действительно для чайников, хочется копать глубже, может кто посоветует, какие книги или ресурсы, может по аське скинете или на почту, был бы очень признателен!!! Втом числе, что касается многопоточных приложений!

Ответить

Номер ответа: 32
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #32 Добавлено: 19.03.11 18:26
Что касается многопоточных приложений могу посоветовать последнее издание Рихтера.

andrey пишет:
Как я понимаю работу программы, прога работает, читая код, слева на право, сверху в низ, та же беда и с таймерами, то есть пока одно приложение не выполнится, другое не начнется?! Много поточность вроде как позволяет ускорить, в данном случае, общение с портами, т.к. потоки между собой переключаются.? Вот, как-то так, из-за того, что так необходимый датчик импульсов весит еще с 7 блоками, а движется он не медленно, я и решил воспользоваться помощью потоков.

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

Если тебе нужно получить данные одновременно с нескольких портов, т.е. отправить запрос и получить ответ, то потоки нужно будет синхронизировать между собой, чтоб в каждом потоке итерация начиналась в один и тот же момент времени. Сделать это можно через тот же ManualResetEvent.

Ответить

Номер ответа: 33
Автор ответа:
 chialexus



ICQ: 321922 

Вопросов: 3
Ответов: 53
 Web-сайт: chialexus.narod.ru
 Профиль | | #33
Добавлено: 19.03.11 19:24
andrey, посмотри вот тут - progbook.ru. Возможно что-нибудь накопаешь.

Ответить

Номер ответа: 34
Автор ответа:
 Smith



ICQ: adamis@list.ru 

Вопросов: 153
Ответов: 3632
 Профиль | | #34 Добавлено: 19.03.11 19:56
Кто хотел добавить негатива?
72, 35 или 16 мм. ?

Ответить

Номер ответа: 35
Автор ответа:
 andrey



ICQ: 305986093 

Вопросов: 3
Ответов: 41
 Профиль | | #35 Добавлено: 19.03.11 20:03
Artyom
если нужно то я его использую (ManualResetEvent), но в данном случае, на каждый порт свой поток и свои ресурсы(переменные, процедуры). Вроде не должно конфликтов быть.
chialexus
Спасибо гляну, но не седня, голова уже от компа болит)).

Ответить

Номер ответа: 36
Автор ответа:
 andrey



ICQ: 305986093 

Вопросов: 3
Ответов: 41
 Профиль | | #36 Добавлено: 19.03.11 20:04
Smith Что?

Ответить

Номер ответа: 37
Автор ответа:
 жванецкий



Вопросов: 0
Ответов: 8
 Профиль | | #37 Добавлено: 02.09.12 11:57
в try catch заключай блок

Ответить

Страница: 1 | 2 | 3 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам