|
|
1.1 ! root 1: //--------------------------------------------------------------------------- ! 2: ! 3: #include <clx.h> ! 4: #pragma hdrstop ! 5: ! 6: #include "MainUnit.h" ! 7: #include "ThreadUnit.h" ! 8: ! 9: //--------------------------------------------------------------------------- ! 10: #pragma package(smart_init) ! 11: #pragma resource "*.xfm" ! 12: TForm1 *Form1; ! 13: //--------------------------------------------------------------------------- ! 14: __fastcall TForm1::TForm1(TComponent* Owner) ! 15: : TForm(Owner) ! 16: { ! 17: CriticalSection = new TCriticalSection(); ! 18: List = new TList(); ! 19: } ! 20: //--------------------------------------------------------------------------- ! 21: void __fastcall TForm1::CreateButtonClick(TObject *Sender) ! 22: { ! 23: TMyThread* NewThread = new TMyThread(true); ! 24: ! 25: NewThread->List=List; ! 26: NewThread->Log=Log; ! 27: NewThread->CriticalSection = CriticalSection; ! 28: ListBox->Items->AddObject(NewThread->ThreadID, NewThread); ! 29: NewThread->Resume(); ! 30: } ! 31: //--------------------------------------------------------------------------- ! 32: void __fastcall TForm1::KillButtonClick(TObject *Sender) ! 33: { ! 34: for(int i=0;i<ListBox->Items->Count;i++) ! 35: if(ListBox->Selected[i]) { ! 36: TMyThread* MyThread = (TMyThread*)ListBox->Items->Objects[i]; ! 37: MyThread->FreeOnTerminate = true; ! 38: MyThread->Terminate(); ! 39: ListBox->Items->Delete(i); ! 40: } ! 41: } ! 42: //--------------------------------------------------------------------------- ! 43: void __fastcall TForm1::TimerTick(TObject *Sender) ! 44: { ! 45: StatusBar->SimpleText = AnsiString(List->Count); ! 46: } ! 47: //--------------------------------------------------------------------------- ! 48:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.