![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| maxfox |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 29.7.2009 Репутация: нет Всего: нет |
Доброе время суток всем!
Уж не ругайте, я понимаю что аналогичных тем в форуме много. Я перелистал кучу страниц - но так и не смог решить свою проблему. Я только начал изучать потоки, но не получатся повторить даже примитивные сточки кода из раздела справки. Моя тривиальная задача: -есть массив из чисел. Пытаюсь каждое число помножить на 2 в своём потоке. 1. создал проект Windows Forms 2. определил массив 3. определил переменную для индекса массива indx 4. создал процедуру в которой происходит перемножение числа в ячейке с индексом indx 4. добавил кнопку и листБокс -по клику на кнопке я заполняю массив и произвожу вычисления (это желаемое). вот код боработчика кнопки
вот код выполняемой процедуры:
-при компиляции вылетает ошибка на строчке создания потока Ошибка 1 error C3350: System::Threading::ThreadStart: конструктор делегата ожидает 2 аргументов e:\projects\zz_programs vs\tests\multtreads\multtreads\Form1.h 120 -однако эта строчка по сути, повторена из справки. Только там пример на консольном приложении. Объясните, пожалуйста, в чём проблема? |
||||
|
|||||
| CYBERDREAM |
|
|||
![]() I think, there4 I am ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1096 Регистрация: 31.10.2006 Где: CyberLand Репутация: 11 Всего: 28 |
-------------------- Ищем .Net, Java, Javascript разработчиков, Кипр, Лимассол. (знание английского необязательно) Telegram, skype: kuchuk.artiom |
|||
|
||||
| maxfox |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 29.7.2009 Репутация: нет Всего: нет |
спасибо. Одну из этих ссылок я уже прошерстил.
Результата это не дало, но я стал из справки потихоньку находить нужную информацию. Во-первых, что понял - это то, что нельзя вызывать в поток функцию члена этого-же класса. Нужно создать ссылочный клас функции которого работают по ссылкам с тем самым массивом, который я создал в классе Формы Во-вторых, в С++ создание потока отличается от С#. Методы ParameterizedThreadStart. или ThreadStart - действительно требуют два аргумента. Тогда: 1. создаю класс:
и в обработчик события кнопки:
..хм. Все вроде работает, но пока не пойму, как определить, что действительно выполняются несколько потоков.... п.с. Хотелось бы чтобы знающие люди по этому коду подсказали бы - в правильном ли направлении гуляют мои мысли, поскольку меня самого терзают какие то сомнения - ведь в основной массе туторов на эту тему, все как то по другому делается.... |
||||
|
|||||
| sergioK |
|
|||
|
Бывалый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 207 Регистрация: 15.2.2008 Репутация: нет Всего: нет |
поставить запись в файл имена потоков RTFM |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [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. |