![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Aline |
|
||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 470 Регистрация: 22.7.2005 Где: Таруса Репутация: нет Всего: нет |
Привет всем!
Мне надо работать с потоками и с прерываниями, а опыта маловато. Подкинули исходник, сделанный в Борланде, надо переделать на Visual C++, но постоянно натыкаюсь на какие то ошибки. К примеру: В Борланде h-файл имеет вид:
я пытаюсь переделать в Visual C++
но сразу же в строке:
возникает ошибка, а как же тогда определить, что класс наследуется от Thread? |
||||||
|
|||||||
| tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
от class Thread нельзя наследоваться
совет - использую не наследование, а агрегацию (внутри TThreadEvent сделай поле-член класса Thread и организуй средства доступа и работы с этим Thread) еще неплохо было бы описать задачу... Что делает этот код, почему у лкссаов именно столько и именно таких членов? -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
| Aline |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 470 Регистрация: 22.7.2005 Где: Таруса Репутация: нет Всего: нет |
В отдельном потоке должна запускаться процедура, которая будет отслеживать прерывание. Т.е. есть плата, для неё разработан драйвер, и по окончания какого-то процесса выставляется прерывание. Суть в том, что надо вовремя поймать это прерывание (или событие)
Вот текст *.cpp на Борланде:
пока никак не получается понять как это реализовать в Visual'e.... |
|||
|
||||
| tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
ты можешь создать потоки, запустить их и выполнять в них какие-то задачи. При этом создаешь события в классах, подписываешься на них, (при необходимости их генеришь)
если этот пример понятен, то и свою задачу ты сделаешь без труда Запускаешь монитор прерываний в отдельном потоке, когда он получит сообщение, он сгененрирует свое событие (а на это событие ты подписываешься в своем основном потоке) Это сообщение отредактировал(а) tol05 - 15.2.2008, 13:55 -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
| Aline |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 470 Регистрация: 22.7.2005 Где: Таруса Репутация: нет Всего: нет |
tol05, как всё сложно... Попробую разобраться.
Дело ещё в том C# всё-таки отличается от C++, и не все примеры для C# я могу с легкостью реализовать в С++, знаний не хватает... |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |