C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
TThread, Зависание
__Cheat3r
Отправлено: 10.02.2006, 18:04


Станционный диспетчер

Группа: Участник
Сообщений: 110



Добрый день...
В программе использую TThread
Делаю всё 100% Правильно , поэтому код выводить не буду..

Моя программа как бы так выразицца, не "поддерживает" мульти поточность, я это понял , когда ничего не нашел в своём коде , что могло бы привести к зависанию... Взял и поставил себе отдельный компонент , разработанный на TThread.
Программа и на этом компоненте виснет(до того момента как выполнится фугкция)

я в полном отчаянии , помогите... Где , как , и что можно исправить .. Может эжто кгде то в св-вах си билдера?

Спасибо.
Asher
Отправлено: 10.02.2006, 18:10


Мастер участка

Группа: Модератор
Сообщений: 550



Привет.
QUOTE
Делаю всё 100% Правильно

Значит и работать долже 100% правильно.
__Cheat3r
Отправлено: 10.02.2006, 18:12


Станционный диспетчер

Группа: Участник
Сообщений: 110



ты дальше то прочитай, я про код , код правильный... Дело в какихто настройках класса или самого приложения...
Doga
Отправлено: 10.02.2006, 18:47


Мастер участка

Группа: Участник
Сообщений: 575



Вместо того что бы:
QUOTE

выполнить Функция


Вы пытаетесь:
QUOTE

выполнить фугкция


Ошибка очевидна.
Grigoriy
Отправлено: 10.02.2006, 19:06


Мастер участка

Группа: Участник
Сообщений: 381



QUOTE (Doga @ 10/02/2006, 18:47)
Вместо того что бы:
QUOTE

выполнить Функция


Вы пытаетесь:
QUOTE

выполнить фугкция


Ошибка очевидна.

Да, потому что если человек не хочет чего-нибудь делать, он начинает искать причину, по которой он не может это сделать.
SMoleTT
Отправлено: 10.02.2006, 21:14


Не зарегистрирован







У меня похожая проблема, при создании потока процессор нагружается на 99%. На Win98 работает нормальмо, а на ХР комп тупит со страшной силой. Код показывать смысла нет — он сгенерирован самим Builder -ом (5). Добавил только фукции
CODE

TRandTh *Thread;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
       : TForm(Owner)
{
Thread =new TRandTh(true);
if(!Thread)
       {
        ShowMessage("!!!!!!!!!");
        Application->Terminate();
       }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender) //Start
{
Thread->Resume();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender) //Stop
{
Thread->Suspend();
}
//---------------------------------------------------------------------------


Кошмар!
__Cheat3r
Отправлено: 11.02.2006, 06:05


Станционный диспетчер

Группа: Участник
Сообщений: 110



Хорошо , скажу так , у меян есть 2 одинковых проекта , в обоих есть класс TThread , один проект я скачаал , как пример , второй сделал на его основе.. сделано всё также , мой виснет , а первый — нет
__Cheat3r
Отправлено: 11.02.2006, 13:11


Станционный диспетчер

Группа: Участник
Сообщений: 110



З.Ы
Зависание происходит при вызове Synchronize()
BreakPointMAN
Отправлено: 11.02.2006, 14:16


Станционный диспетчер

Группа: Участник
Сообщений: 86



ты бы код показал...
__Cheat3r
Отправлено: 11.02.2006, 16:19


Станционный диспетчер

Группа: Участник
Сообщений: 110



Я похоже понял в чем проблема , видимо в синхронайз , нельзя пихать ничего , кроме всяких Form1->Caption ...etc
Doga
Отправлено: 13.02.2006, 13:44


Мастер участка

Группа: Участник
Сообщений: 575



2__Cheat3r
Мда... Вы бы хотя бы HELP почитали бы по TThread... wink.gif

Вернуться в Вопросы программирования в C++Builder