Alternative zu Threads?
-
Hallo,
in der C++-Builder-Hilfe steht, dass man nicht mehr als 6 (?) Threads gleichzeitig laufen lassen soll.
Was mache ich aber, wenn ich z.B. 20 Threads benötige? Dies bremst das System dann wohl zu sehr aus. Gibt es eine alternative Lösung?
-
Ignorier das doch einfach und probier aus, ob man da groß was merkt

Vor allem Netzwerk-Software arbeitet oft mit mehr als 6 Threads...
-
kommt ja auch drauf an was diese Threads machen!
Wenn sie z.B. viel von der Festplatte lesen / schreiben dann kann das schon das System bremsen...
Ich würde auch mal sagen, einfach ausprobieren!
-
Was machen denn deine 20 Threads?
-
z.B bei einem typischen Server (Chat, Webanwendug usw.) macht man auch pro Client einen Thread auf, weil das um einiges einfacher zu Handhaben ist (zumindest finde ich das
). Und die Programme laufen auch bei 20 und mehr Clients ohne großartig die CPU zu beanspruchen ;). Es kommt immer darauf an was die Threads machen und soweit ich weiß gibt es da schon Beschränkungen auf der Windowsebene, diese liegen aber deutlich über den 6 Threads gleichzeitig.
-
Platform SDK schrieb:
The number of threads a process can create is limited by the available virtual memory. By default, every thread has one megabyte of stack space. Therefore, you can create at most 2028 threads. If you reduce the default stack size, you can create more threads. However, your application will have better performance if you create one thread per processor and build queues of requests for which the application maintains the context information. A thread would process all requests in a queue before processing requests in the next queue.