Перевод: Борис Новгородов, Новосибирск, 2002 г., с любезного разрешения Мартина Харви.

 

Работа над этим руководством продолжается. Если у вас есть вопросы или предложения по стилю, существу темы или оформлению, не стесняйтесь писать автору: martin@pergolesi.demon.co.uk.

Последний вариант руководства можно найти на сайте Мартина Харви (Martin Harvey) или в виде HTML страниц, или как zip-файл.
Благодаря большой работе, проделанной Michael Cessna, доступен также вариант в HTML help формате.
Если связь с этим сайтом медленная, архив имеется и на Borland CodeCentral.
Если вы хотите узнать, чем занимается автор в свободное от написания руководств по программированию время, посетите и другие разделы его сайта.

Английский оригинал этого документ последний раз обновлялся 1 апреля 2001 г..
.


Multithreading - The Delphi Way.

Многопоточность - как это делается в Дельфи.

Martin Harvey.

Version 1.1a

Содержание.

Введение.
Посвящения.
Рекомендуемая литература.
Навигация.
История изменений.
Благодарности.

Глава 1. Что такое потоки. Для чего их использовать?

Глава 2. Создание потока в Дельфи.

Глава 3. Основы синхронизации.

Глава 4. Простое разрушение потока.

Глава 5. Снова о разрушении потока. Тупик или зацикливание (Deadlock).

Глава 6. Снова о синхронизации: Критические секции и мьютексы.

Глава 7. Программирование с использованием мьютексов. Управление конкуренцией.

Глава 8. Потокобезопасные классы в Дельфи и приоритеты.

Глава 9. Семафоры. Управление потоками данных. Взаимосвязь источник-приемник.

Глава 10. Ввод/вывод и потоки данных: от блокировки к асинхронности и обратно.

Глава 11. Синхронизаторы и события (Events).

Глава 12. Еще о возможностях синхронизации в Win32.

Дальнейшие главы пока не готовы


Глава 13. Использование потоков при работе с BDE. Исключения и DLL.
Глава 14. Проблема, встретившаяся на практике, и ее решение.


Введение.

Это руководство предназначено для тех, кто заинтересован в улучшении производительности и уменьшении времени отклика на ввод пользователя своих приложений, написанных с помощью Дельфи, используя потоки (Thread). Оно освещает многие темы, полезные как начинающим, так и программистам с определенным опытом, а некоторые реальные примеры из практики затрагивают довольно сложные вопросы. Подразумевается, что читатель обладает определенными познаниями в программировании на языке Object Pascal, включая основы объектно-ориентированного программирования и понимание основ программирования, основанного на событиях.

Посвящения.

Dedicated to three members of the Computer Science department at the University of Cambridge: Dr Jean Bacon, Dr Simon Crosby, and Dr Arthur Norman.

Many thanks to Jean as a tutor for making a complicated subject seem simple, for providing excellent reference material, and for lifting a corner of the veil around a hitherto mysterious subject. She also deserves thanks as a director of studies, for explaining the Computer science timetable to me. It took me three years to figure it out for myself!

Many thanks to Simon as a tutor, for showing me that although modern operating systems may be fiendishly complicated, the principles underlying them are simple. He also deserves thanks for taking on a student with unconventional ideas about final year project material, and for providing much useful advice on my project dissertation.

Arthur Norman never taught me a thing about multithreading. He did however teach me many other things, which helped me when writing the more complicated parts of this guide:

He also deserves a mention for some of the best quotes ever to fall from a computer science lecturers lips: He even has his own fan page.

Рекомендуемая литература:

Title: Concurrent Systems: An integrated approach to Operating Systems, Database, and Distributed Systems.
Author: Jean Bacon.
Publisher: Addison-Wesley
ISBN: 0-201-41677-8

Автор будет рад сообщениям и о других полезных книгах.

Навигация.

Текст и диаграммы для каждой главы этого руководства находятся содержатся на одной HTML странице. Примеры кода появляются в новом окне. Чтобы их увидеть, вам нужно разрешить в вашем браузере javascript. .Для облегчения параллельного просмотра текста и исходного кода читатель может расположить окна вертикально ( в панели задач выбрать "Окна сверху вниз").

История изменений.

Version 1.1:

Благодарности.

Благодарю этих людей за просмотр, предложения, исправления и существенное улучшение этого руководства:

 

Перевод: Борис Новгородов, Новосибирск, 2002 г.

С любезного разрешения Мартина Харви.



© Martin Harvey 2000.
Hosted by uCoz