Как да се създаде нишка в Делфи 7

Пример създаде многонишков приложение в Delphi

Аз ще се опитам да се изчисли числото "пи" с максимална точност след десетичната запетая. Разбира се, вградената в Делфи

константа Пи има достатъчна точност, по-добре да се каже - максимално допустимия от най-добрите 10-байтов формат за реални числа удължен. Така че, за да я бие, няма да успее. Но този пример от потоци може да служи като пролог за решаване на реални проблеми.

Първият пример ще съдържа два потока: главен (обработка потребителски вход) и компютър; ние можем да променят свойствата си и да видим реакцията. Така че, направете следните стъпки:

1. Отворете менюто File и изберете New Application в Делфи.

2. Позиция под формата на пет марки и един превключвател, както е показано на фиг. 1.

Преименуване на основната форма fmMain.

3. Отворете менюто File и изберете Save Project As. Запазване на модула като uMain, а проектът - като нишките.

Фигура 1. вид на форми за приложение за Threads

4. Отворете менюто File и изберете New. След това кликнете два пъти върху даден обект, като поток (икона Тема Object) а. Отваря Нови артикули диалоговия прозорец, както е показано на фиг. 2.

Фигура диалогов прозорец 2. Нови артикули с избрания тип обект "поток"

Фигура 3. В диалоговия прозорец New Тема Object

5. Когато бъдете подканени да назове диалоговия поток обект, въведете TPiThread и натиснете (фиг. 3). Освен това, ако желаете, можете да зададете име за да се създаде поток чрез задаване на Кръстен квадратчето Тема и за вписване на название в името поле Тема А. От името на потока се използва само да се позова на удобство, няма да се използва тази възможност.

Delphi ще създаде нов модул и поставете шаблона за новия конец.

6. код въведен в метода на Execute, изчислява броя на I, с помощта на сближаването на безкрайна поредица от Лайбниц:

Pi = 4 - 4/3 + 4.5-4.7 + 4/9 -.

Разбира се, за да се покаже новата стойност след всяка итерация - е същото като това стреля от топ върху колелото. На системата за информационен дисплей ще прекарат десет пъти повече време, отколкото на действителното компютри. Ето защо, ние се запознахме с постоянен updatePeriod, който регулира честотата на текущата стойност.

Изпълнение метод код е показано по-долу:

// По-добре използвайте нечетен брой, за да се избегне ефекта на трептене // UpdatePeriod = 1000001;

7. Отворете менюто File и изберете Save As. Запазване на модула по течението като uPiThread.pas.

8. Редактиране на основната документация и добавяне на модул uMain.pas uPiThread модул към списъка с модули, използвани в раздела за интерфейс. Тя трябва да изглежда така:

9. В формата на публично раздел TfmMain добави линк към нишка създаден от: PiThread. TPiThread;

10. Добавяне на модул uMain две глобални променливи

Този метод, ако сте били да се обръща внимание, се нарича от потока от процедура Синхронизиране. Тя показва текущата стойност по-близо до номер "пи" и броя на повторенията.

Ако основния прозорец е сведена до минимум, на дисплея не се извършва; така, че след като е бил разположени, може да се наложи да изчакате известно време, за актуализация.

11. Кликнете два пъти върху празно място на формуляра за работно място е създаден с FormCreate на метод шаблон. Тук се показва стойността на системата постоянно р ±:

12. Кликнете върху формата на ключа (името cbcalcuiate) и възлага събитие OnClick кода, който създава и унищожава изчислителни нишката, в зависимост от състоянието на ключа:

По този начин, приложение за многонишковите е готов да се изпълнява. Ако всичко върви добре, ще видите една картина, подобна на показаната на фиг. 4.

Фигура 4. стартирате приложения Конци

  • Никола "Благодаря ви. Long търси нещо подобно. Само този код излезе за скрипт магазин безплатно ver2

Почивам си в свободното си време

Multi-сайт на WordPress

  • Марина "Здравейте! Podsk azhite, моля, ако съм начинаещ не е трудно. Наскоро стартира сайт с проблемите на жените на WordPress (там, докато двойката.
  • TruLander »Марина е моят съвет към вас, ако вие не разбирате същността на преработка, по-добре да направи две отделни сайт, тя ще бъде по-лесно, дори и повече.
  • Марина "Благодаря ви много!

най-популярният