‫Willkommen zurück und in diesem Video werden wir uns Bedrohungspools ansehen, daher werden wir mehrere Threads
‫erstellen und sehen, was passieren wird.
‫Lassen Sie uns daher zuerst einfach einen sehr einfachen Thread erstellen, und
‫ich werde dieses Vervollständigungsquellmaterial loswerden.
‫Und damit sind wir hier bei einem sehr generischen Thread.
‫Das ist also ein generischer Thread, den wir bisher verwendet haben.
‫Und hier warten wir zum Beispiel eine Sekunde und es hat einen Thread.
‫Nein.
‫Und um es zu starten, müssen wir natürlich hier gegen Ende die start-Methode aufrufen.
‫Das wird jetzt nur ein Thread sein und er wird beginnen.
‫Also nichts Neues hier.
‫Das haben wir dort schon mehrfach gemacht.
‫Der einzige Unterschied besteht also darin, dass ich jetzt einen sogenannten Thread-Pool verwenden möchte.
‫Aber bevor ich das tue, verwende ich einfach eine solche zählbare und numerische Rechnung, und
‫ich werde einen Bereich von Null bis, sagen wir, 100 für jetzt, zwei Listen und für jeden Eintrag ausführen.
‫Ich möchte etwas tun.
‫Ich sage also nur, dass Sie nur einen bestimmten Code ausführen.
‫Dies ist also nur eine Zeile Code.
‫Und da möchte ich Threads erstellen.
‫Was also tun wird, ist, dass diese aufzählbare oder diese aufzählbare tatsächlich mehrere Threads erstellen wird, und
‫es werden 100 von ihnen erstellt.
‫Also werde ich hier einen Link verwenden.
‫Verwenden Sie also den Systemlink, um die Aufzählung zu verwenden, und sie sollte am Ende als Bereich bezeichnet werden, damit wir
‫es sind.
‫Das reicht also, wenn es einfach 100 Bedrohungen erzeugt und wir alle diese Bedrohungen auf der Konsole sehen werden.
‫Fangen wir also damit an.
‫Und da sind wir.
‫Und wie Sie sehen können, beginnt es die Threads und es beendet die Threads und einhundertzwei ist der letzte
‫Thread.
‫Und ich kann sehen, dass es mit drei begann.
‫Es beginnt also mit drei, sechs, fünf und so weiter.
‫Die Reihenfolge ist also, wie Sie sehen können, ganz anders, als wir es erwarten würden.
‫Die Threads haben also eine andere ID als wir sie erwarten würden, aber dann werden sie gestartet und
‫beendet und das war vielleicht etwas zu schnell.
‫Lassen Sie uns also ein wenig mehr Bedrohungen erstellen, oder ich würde sagen, 1000 Threads.
‫Und wie Sie sehen können.
‫Es erstellt Tonnen von Threads, aber Threads werden beendet, bevor andere gestartet werden.
‫Es gibt also unzählige, die es so schnell wie möglich, so schnell wie möglich, dort ansetzt, wo es sie erstellt.
‫Aber wie Sie sehen, dauert es ein bisschen.
‫Nehmen wir also an, ungefähr hundert Millisekunden oder so, um einen Thread zu erstellen, der wir sind, erstellt er sie und beginnt
‫dann, sie zu beenden.
‫Nach einer Sekunde wurden also nur sechs Threads erstellt, dann Thread fünf.
‫Damit war einer der ersten beendet.
‫Wie Sie sehen können, entstehen diese Bedrohungen.
‫Und das ist nicht sehr effizient, weil wir diese Bedrohungen nicht kontrollieren können.
‫Wir können diese Menge an Bedrohungen nicht kontrollieren.
‫Und das ist ein ganz wichtiger Aspekt.
‫Die Bedrohungen, dass Sie sehr, sehr vorsichtig und sehr präzise sein müssen, wenn Sie mit Bedrohungen arbeiten.
‫Sie müssen wissen, was Sie mit dieser Bedrohung und den Weißen dort machen möchten und wie Sie im Allgemeinen mit allem arbeiten,
‫was innerhalb der Bedrohung liegt.
‫Das ist also nur ein Beispiel für Bedrohungen, wie Sie mehrere davon erstellen können.
‫Und es hat einfach tausend solcher Bedrohungen geschaffen.
‫Lassen Sie uns nun einen Blick auf Bedrohungspools werfen, da ihre Pools einen etwas anderen
‫Ansatz und eine andere Verwendung von Bedrohungen aufweisen und sie etwas sicherer sind, sagen wir, weil sie nicht tausend Bedrohungen erstellen, die
‫nicht erforderlich sind.
‫Es enthält nur die Bedrohungen, die derzeit erforderlich sind.
‫Lassen Sie uns hier also einen Bedrohungspool erstellen.
‫Und Q Benutzer-Arbeitselement.
‫Q ist eine Methode zur Ausführungsmethode, die ausgeführt wird, wenn eine Bedrohung durch einen Bedrohungspool verfügbar wird.
‫Also nur wenn es verfügbar ist, dann wird dies ausgeführt und es braucht hier ein Objekt.
‫Es gibt hier also zwei verschiedene, um Rückruf und Objekt zu sehen, und ich gebe ihm nur ein oh
‫wie ein Objekt.
‫Werde es einfach anrufen.
‫Ach, nichts besonderes hier.
‫Und was werde ich im Bedrohungspool ausführen?
‫Also sage ich einfach, gib mir das Ich. D. der Bedrohung oder der Bedrohungsnummer und sagen wir, wann sie begann
‫und wann sie endete.
‫Das ist so ziemlich alles, was ich mit diesem Bedrohungspool machen möchte.
‫Und wie Sie hier sehen können, erschaffen wir nicht speziell, wir erschaffen keine Bedrohungen.
‫Aber dieser Bedrohungspool wird dies für uns tun.
‫Es gibt also viel zu tun, etwa tausend Bedrohungen, die es zu bewältigen gilt.
‫Und wie Sie sehen, erzeugt es nur eine bestimmte Anzahl von Bedrohungen.
‫Und wie Sie sehen, startet und beendet es die Bedrohungen mehr oder weniger gleichzeitig.
‫Und Sie können auch sehen, dass ich hier nicht viele Anrufe auf meiner CPU habe, da sie nur mit einer bestimmten Anzahl von
‫Bedrohungen gleichzeitig arbeiten kann.
‫Der Bedrohungspool wird die Dinge also viel reibungsloser handhaben, wie Sie sehen können.
‫Aber natürlich braucht es viel Zeit, um all diese 1000 Bedrohungen zu überwinden.
‫Aber wie gesagt, wenn Sie Bedrohungen verwenden, müssen Sie
‫sie kontrollieren, also verwenden Sie Bedrohungen nicht
‫willkürlich.
‫Im Vordergrund steht also meist so etwas wie die Benutzeroberfläche.
‫Wenn Sie also WP F verwenden oder Apps mit Gamoran verwenden oder Absolutismus erzeugen, dann wird alles, was vorne und so in
‫der Benutzeroberfläche passiert, von der Hauptbedrohung und dann oder von der UI-Bedrohung erledigt und dann so etwas wie das Herunterladen von
‫Videos oder das Herunterladen von Daten im Allgemeinen aus dem Internet oder das Zugreifen auf Daten von der
‫Festplatte oder von der SD-Karte oder was auch immer.
‫Alles, was etwas dauern könnte, auch wenn es nur ein paar Millisekunden sind
‫oder noch ein paar, aber mehrere Millisekunden, dann sollte das schon im Hintergrund gemacht werden, da
‫sonst deine Benutzeroberfläche eingefroren wird, weil, naja, sie ist nicht bereit dafür etwas tun, weil die Bedrohungen alle beschäftigt
‫sind.
‫In Ordnung, also geht es darum, Bedrohungspools zu erstellen, und wenn Sie viel zu tun haben, können Sie Bedrohungspools
‫verwenden.
‫Bei der Verwendung von Bedrohungspools sind also mehrere Dinge zu beachten. Im Allgemeinen sind Bedrohungspools dazu
‫da, eine bestimmte Arbeit auszuführen oder bestimmte Arbeiten oder Arbeitselemente zu erledigen, und sie warten ziemlich genau, bis die nächste Bedrohung
‫fertig ist oder eine Bedrohung zuvor erledigt ist beginnt.
‫Die nächste Bedrohung oder bevor sie mit dem nächsten Workitem beginnt.
‫Das ist der Vorteil von Bedrohungspools, dass sie keine Leerlauf- oder Ruhezeiten haben, in denen so gut wie
‫nichts passiert, weil es Situationen geben kann, in denen einfach nichts mit Ihrer oder Ihrer CPU gemacht
‫werden muss.
‫Und das ist völlig in Ordnung, denn sonst würde es die CPU ziemlich belasten, wenn sie die ganze Zeit laufen
‫und ständig Sachen machen muss oder schwere Arbeit leistet.
‫Aber im Allgemeinen versuchen Sie es einfach, es sagt einfach: OK, wenn nichts da ist oder wenn genug Platz für mich vorhanden ist,
‫um einen Thread zu starten oder eine Bedrohung zu erstellen, werde ich dies tun und die Dinge ausführen, die sein
‫müssen getan.
‫Die Bedrohungen im verwalteten Bedrohungspool sind übrigens Hintergrundbedrohungen.
‫Das ist ihre Bedrohung im Hintergrund.
‫Eigentum ist wahr.
‫Das haben wir also noch nie gesehen.
‫Aber wenn ich so eine Bedrohung erstelle.
‫Also hier, lass mich diese neue Bedrohung von hier bekommen.
‫Und wenn ich das in den Hintergrund stellen möchte, kann ich das tun.
‫So ist sein Hintergrund zum Beispiel gleich.
‫So kann ich diesen Thread auf Ihren Hintergrund und in die Warteschlange in diesem Thread-Pool setzen.
‫F Es gibt nur Hintergrundbedrohungen.
‫Und der andere zu berücksichtigende Punkt ist, wenn die Bedrohung für die Wiederverwendung eine Bedrohung ist. Was wir hier gesehen
‫haben, also die Bedrohung verringert, ist, dass wir diese Bedrohungs-verwaltete ID gesehen haben.
‫Es wurde häufig wiederverwendet, dann löscht der Bedrohungspool die Daten im lokalen Bedrohungsspeicher nicht.
‫Wenn eine Methode die Bedrohung, den lokalen Speicher, untersucht, können daher die gefundenen Werte von einer früheren
‫Verwendung der Bedrohungspool-Bedrohung übrig bleiben.
‫Das müssen wir also bedenken.
‫Ich werde einen Link mit dir teilen.
‫Wir können mehr über Bedrohungspools und Allgemeines lesen.