Wofür ist ein Executor in Java da?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Einem normalen Thread wird ja ein Runnable übergeben, das dann ausgeführt wird und nachdem der Thread beendet wird. Danach musst du einen neuen Thread erstellen und wieder ein Runnable übergeben. Das ist im Falle von vielen abzuarbeitenden Aufgaben mühsam und ineffizient, ein Thread sollte am "Leben" gehalten werden, und mehrere Aufgaben nacheinander übernehmen können. Hierfür wird ein Threadpool erstellt, zum Beispiel aus 10 Threads. Ein Executor weist dann eine anfallende Aufgabe (Runnable) einem freien Thread aus dem Pool zu.

Wenn das jemand weiß, dann höchstwahrscheinlich die Entwickler. Vielleicht mal die APIdocs lesen?

Was möchtest Du wissen?