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

Вниз

Скока можно одновременно сетевых подключений и потоков?   Найти похожие ветки 

 
Mad_Ghost ©   (2002-12-06 14:53) [0]

1. Уважаемые мастера, никто не задавался вопросом, скока программируя на Делфи можно открыть потоков одновременно?
анпример Апач выдерживает 1000 потоков как я слышал, а скока я могу сделать, это зависит от машинки, или от чего ещё?
2. И сколько можно держать одновременно сетевых соединений, через TServerSockets и 2.1 TTCPServer ??????

очень нужно, заранее благодарен.


 
Romkin ©   (2002-12-06 15:04) [1]

Насчет потоков - не считал, но оооочень много, и это от системы зависит :-))

procedure ThreadProc(Parm: pointer);
var
i,j: integer;
begin

while true do
begin
i := 0;
j := 0;
while i < MAXINT - 1 do
begin
i := i + 1;
j := i - 1;
end;
end;
end;

while true do
beginThread(.. ThreadProc, nil, ... );

что-то вроде этого...

- NT дохнет быстро


 
Mad_Ghost ©   (2002-12-06 15:12) [2]

на счет потоков понятно, спасибо, а вот ещё на счет сетевых подключений? по TCP, например клиент присоединился передал че нужно и сразу удаляется, или можно например, установить соединение и висеть немеряно долго, и например 1000 соединений, такое возможно?


 
Anatoly Podgoretsky ©   (2002-12-06 15:16) [3]

Mad_Ghost © (06.12.02 15:12)
Количество также системой ограничено, где то в реестре прописано, поэтому может быть разное


 
Digitman ©   (2002-12-06 15:23) [4]


> программируя на Делфи


Причем здесь Делфи ?


> скока я могу сделать, это зависит от машинки, или от чего
> ещё?


Теоретически - до 2^32 - 1. ОС ведет сч-ки потоков каждого процесса в полях типа ULONG

I>
> сколько можно держать одновременно сетевых соединений, через
> TServerSockets


Теоретически - Min(MAX_LONG, MAX_SOCKETS)


 
Mad_Ghost ©   (2002-12-06 15:26) [5]

аха, понял большое спасибо Вам .....


 
Digitman ©   (2002-12-06 15:29) [6]

Практически же каждый процесс может иметь не более 64к потоков

Ибо ВАП процесса - не резиновое, а 1-й эл-т TEB-стека процесса расположен по вирт.адресу 7FFDD000, каждый эл-т = 4к и растет стек в сторону уменьшения адресов.


 
Sha ©   (2002-12-06 15:42) [7]

Думаю макс. под NT 65355 соединений, реально достигнуть 4000-5000.


 
Anatoly Podgoretsky ©   (2002-12-06 15:49) [8]

В 9х это будет еще хуже, порядка 1500 или менее


 
Digitman ©   (2002-12-06 15:55) [9]


> скока я могу сделать, это зависит от


как ОС (платформы), так ресурсов, находящихся в ее распоряжении на конкр.момент времени


 
VaS ©   (2002-12-06 16:58) [10]

Еще надо учитывать размер стека каждого потока. По умолчанию в виндоус он равен 1М.
To Romkin: с таким кодом осторожнее - не забудь выставить руками IsMultiThread:=true.



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

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

Наверх




Память: 0.49 MB
Время: 0.018 c
4-61869
MrAngel
2002-11-01 16:13
2002.12.19
Где найти описание функции AlphaDIBBlend


1-61640
Checist [root]
2002-12-07 06:10
2002.12.19
Нужен дельный совет


3-61404
Геннадий
2002-12-03 08:32
2002.12.19
Подскажите с InterBase


14-61816
VictorT
2002-11-26 20:32
2002.12.19
О жребиях


3-61386
RDA
2002-11-29 09:16
2002.12.19
Исключения при работе с АДО