Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.06;
Скачать: CL | DM;

Вниз

Где поток (TThread)   Найти похожие ветки 

 
QHread   (2004-05-23 17:45) [0]

Лучше создавать поток так/еше как
type
 Demo = class(TThread)
 procedure Execute; override;
 end;
------------
procedure TForm1.Button1Click(Sender: TObject);
begin
Demo.Create(false);
end;
procedure Demo.Execute;
begin
end;
Или использовать модуль Thread Object из репазитория
????


 
DiamondShark ©   (2004-05-23 17:51) [1]

А что, "модуль Thread Object из репазитория" чем-то отличается от написанного?


 
QHread   (2004-05-23 18:02) [2]

DiamondShark ©  (23.05.04 17:51) [1]
Я в том смысле, что это написано

unit form1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   Button2: TButton;
   Memo1: TMemo;
   Edit1: TEdit;
   Label1: TLabel;
   Memo2: TMemo;
   Timer1: TTimer;
   procedure Button1Click(Sender: TObject);
   procedure Button2Click(Sender: TObject);
   procedure Timer1Timer(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;
type
 Demo = class(TThread)
 procedure Execute; override;
 Procedure SysMessaga;
 end;
var
 Form1: TForm1;

implementation

{$R *.dfm}

А не в
unit Unit1;

interface

uses
 Classes;

type
 Myhread = class(TThread)
 private
   { Private declarations }
 protected
   procedure Execute; override;
 end;

implementation

{ Important: Methods and properties of objects in visual components can only be
 used in a method called using Synchronize, for example,

     Synchronize(UpdateCaption);

 and UpdateCaption could look like,

   procedure Myhread.UpdateCaption;
   begin
     Form1.Caption := "Updated in a thread";
   end; }

{ Myhread }

procedure Myhread.Execute;
begin
 { Place thread code here }
end;

end.
Хотя препод мне настоятель рекомендует писать в 2 вариант то бишь в модуль.
Насколько понимаю этот модуль потом все равно включается в exe"шник прав ли я?


 
Palladin ©   (2004-05-23 18:07) [3]

Нет. Он не включается в exe"шник. Что ему там делать? Он просто как декорация в проекте. Для красоты. А в exe"шник включается только Unit1.pas и project1.pas и больше ничего. Остальные юниты это злобные проделки Borland. Что бы запутать честных разработчиков.


 
QHread   (2004-05-23 18:20) [4]

Palladin ©  (23.05.04 18:07) [3]
Да а я то думал, что и EXE не нужен хватит project1.pas А где его искать то ExE этот может в инете скачать? а dll это вообще...... рулез

Если серьезно, то как лучше я лично разницы нивижу. Насчет включается имел ввиду компиляцию кода модуля в exe а не в отдельный подключаемый модуль. Извените если мысль моя не понятна да сих пор.


 
DiamondShark ©   (2004-05-23 18:27) [5]

Препод правильно рекомендует.


 
Palladin ©   (2004-05-23 18:30) [6]

все что включено в проект все в него входит... если проект приложение, то все входит в исполняемый файл... если проект динамичеси связываемая библиотека, то все входит в dll... юниты (DCU) это кирпичики исходного текста, созданы исключительно для удобства разработчикам... + "умная" компоновка, не используемые функции и процедуры модуля, обычно в исполняемый файл не включаются...
твой препод абсолютно прав...


 
QHread   (2004-05-23 18:31) [7]

DiamondShark ©  (23.05.04 18:27) [5]
А почему не затруднитесь?
Какая разница? и так работает, просто с кодом проще и все, но для кого как.


 
Palladin ©   (2004-05-23 18:33) [8]


>  QHread   (23.05.04 18:31)

Вот когда будет создавать проекты под стотыщьмиллионов строк твое сегодняшнее "но для кого как" завтра тебе покажется неимоверной глупостью...


 
QHread   (2004-05-23 18:50) [9]

Так речь то об функциональности
Всеравно спасибо. По пунктам согласен.
Препод рулит


 
DiamondShark ©   (2004-05-23 18:55) [10]


> QHread   (23.05.04 18:31) [7]

Не затруднюсь.

Модульность ведь не для издевательсва над студентами придумали, а для упорядочения разработки и поддержки программ. В частности, для разделения слабо- или несвязанных фрагментов программы.

В нашем случае модуль формы -- для реализации UI, а модуль потока -- для какой-то иной задачи.


 
QHread   (2004-05-23 18:57) [11]

DiamondShark ©  (23.05.04 18:55) [10]
Ну и я о том. Препод рулит!!!!!



Страницы: 1 вся ветка

Текущий архив: 2004.06.06;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.048 c
3-1084432467
SergeyI
2004-05-13 11:14
2004.06.06
Преобразовать _recordset в TMemoryStream


3-1084784182
zolg
2004-05-17 12:56
2004.06.06
EDBEngineError: Directory is busy.


3-1084805796
Voland777
2004-05-17 18:56
2004.06.06
Почему не находит нужную запись?


4-1083050775
luka
2004-04-27 11:26
2004.06.06
Сообщения


1-1085315631
griban
2004-05-23 16:33
2004.06.06
Exel...