Форум — Ответы ( К темам )
? | Сергей: фоновое выполнение задачи (04-03-2003 19:36:55) |
Как заставить свою программу котороя свертываеться в трай в фоне выполнять определееные действия например отсылать мыло | |
ACD (08-03-2003 03:29:20) | |
возможно _beginthread() CreateThread()
| |
Георгий (09-03-2003 00:01:39) | |
Может я не совсем понял вопрос, но: программа работает независимо от того свёрнута ли она или нет чтоб выполнять какие либо действия без инициативы пользователя (не по нажатиям кнопок) можно: 1 поставить на форму компонент Timer и через него выполнять какую либо функцию плюсы: очень просто реализуется, а если периодически вызывать Application->ProcessMessages(); то создаётся иллюзия паралельной работы минусы: сообщения от таймера имеют минимальный приоритет и могут не приходить или приходить с задержной 2 создать поток, который большую часть времени проводит в спячке, и в нём выполнять, то, что надо плюсы: если поток с приоритетом tpTimeCritical, то он гарантированно получит управнение в заданный момент времени (погрешность 5ms), работа независимо от действий пользователя минусы: VCL не любит обращений из паралельных протоков и может глючить самыми разными способами -> проблема (сложность) синхронизации |