A technique, system, and computer program for enhancing performance of a
computer running a multithreaded server application. A scheduling
heuristic is defined for optimizing the number of available threads. This
heuristic alleviates over-scheduling of worker threads by defining a
technique to wait to assign an incoming request to a currently-executing
thread (upon completion of the thread's current work), instead of
awakening a blocked thread for the incoming request. Provision is made to
ensure no thread waits too long. Two stages are associated with a passive
socket, so that a connection is only bound to a worker thread when work
arrives for that connection. A new type of socket is defined, for merging
input from more than one source and making that merged input available for
scheduling. A giveback function is defined, for optimizing assignment of
threads to incoming requests when persistent connections are used. Threads
that go idle are put onto an idle queue, releasing them from a worker
thread.
Eine Technik, ein System und ein Computerprogramm für das Erhöhen von von Leistung eines Computers, der a laufen läßt, multithreaded Bedieneranwendung. Eine heuristische Terminplanung wird für die Optimierung der Zahl vorhandenen Gewinden definiert. Dieses heuristische vermindert die über-Terminplanung der Arbeitergewinde, indem es eine Technik definiert, um zu warten, um einen ankommenden Antrag einem gegenwärtig-Durchführung Gewinde zuzuweisen (nach Beendigung der gegenwärtigen Arbeit des Gewindes), anstatt, ein blockiertes Gewinde zu wecken auf den ankommenden Antrag. Vorkehrungen werden, keine langen Gewindewartezeiten sicherzustellen zu getroffen. Zwei StadienSIND mit einer passiven Einfaßung verbunden, damit ein Anschluß nur zu einem Arbeitergewinde gesprungen wird, wenn Arbeit für diesen Anschluß ankommt. Eine neue Art Einfaßung wird definiert, für das Mischen des Einganges von mehr als einer Quelle und das Zur Verfügung stellen das des vermischten Einganges für die Terminplanung. Eine giveback Funktion wird, für optimierenanweisung der Gewinde zu den ankommenden Anträgen definiert, wenn hartnäckige Anschlüsse benutzt werden. Verlegt, das Leerlauf werden gesetzt auf eine untätige Warteschlange gehen und sie von einem Arbeitergewinde befreien.