XE2 - Indy TCPServer: кой е най-добрият начин за писане и четене на списък?

Работя с IdTCPServer и той се справя добре за ограничен период от време, опасявам се, че това е свързано с управлението на нишките в списъка, тъй като използвам TTimer за обработка на данни atm. така че бих искал да знам възможните начини, по които мога да се справя с тези връзки за четене и запис, сървърът ще работи с много връзки (получаване, обработка и изпращане на данни в реално време).


person Paulo Rocha    schedule 18.06.2012    source източник


Отговори (1)


TIdTCPServer е многонишков компонент. Всеки достъп до потребителския интерфейс трябва да бъде синхронизиран с основната нишка на потребителския интерфейс, като например с TIdSync или TIdNotify класовете на Indy, или могат да се случат лоши неща. TTimer в главната нишка е добър избор за достъп до данни, при условие че данните се осъществяват по безопасен за нишката начин, като например с mutex или критична секция. Но таймерът не е непременно най-добрият избор. Това наистина зависи от това какво вашият код всъщност трябва да прави с данните и потребителския интерфейс. Без тази информация е трудно да ви посъветваме кой е най-добрият подход за посрещане на вашите нужди. Има много възможности за избор.

person Remy Lebeau    schedule 18.06.2012
comment
благодаря ви много за помощта, ще започна да го разглеждам. ако мога да попитам, знаете ли за някакъв справочник/книга/образец, за да мога да започна? - person Paulo Rocha; 19.06.2012