‫Willkommen zurück.
‫In diesem Video möchte ich über Join and is alive sprechen, also ist Join eine Methode, die Bedrohung oder die Bedrohungsklasse hat,
‫und wir können verwenden und ist lebendig ist eine Eigenschaft, die sie hat.
‫Also lasst uns hier drinnen eine Bedrohung schaffen oder eigentlich Bedrohungen.
‫Und ich habe auch zwei Methoden erstellt.
‫Die Bedrohung, eine Funktion und die Bedrohung der Funktion.
‫Und was sie tun, ist einfach zu sagen, dass sie angefangen haben.
‫So wurde die dritte Funktion gestartet und versucht zu funktionieren.
‫Jetzt können Sie das einfach kopieren oder ganz schnell selbst bauen und dann können Sie fortfahren.
‫Hier wird einfach gesagt, dass der Domänen-Thread gestartet wurde und am Ende der Haupt-Thread beendet ist.
‫Also bisher nichts neues.
‫Beginnen wir beispielsweise mit Control 5, dann bleibt die Konsole wach, Hauptthread gestartet und Hauptthread
‫beendet.
‫Drücken Sie eine beliebige Taste, um fortzufahren.
‫OK, Sie können also sehen, wie es begann und es endete, und das ging ganz, ganz schnell.
‫Hier passiert also nicht viel.
‫Also lasst uns das jetzt ändern.
‫Lass uns dort ein paar Threads erstellen.
‫Erstellen wir also einen neuen Thread namens Thread One.
‫Also Thread.
‫Und um Thread zu verwenden, müssen wir das System-Threading implementieren.
‫Jetzt können wir also Threads verwenden.
‫Und ich werde diesen einen Thread einen nennen.
‫Und was zu tun ist, ist einfach ein neuer Thread, der die Thread-Funktion eins oder die
‫Thread-Eins-Funktion aufruft.
‫Also werde ich einfach diesen Code hier ausführen.
‫Es wird sie nur die Methode nennen.
‫Und als nächstes ein anderer Thread.
‫Ich werde den Thread zwei nennen, der auch ein Thread sein wird und hier Thread funktioniert.
‫Wie Sie sehen können, gibt es mehrere Overlord-Threads, startparametrisierte Threadstarts und Threadstarts.
‫Das, was wir tun, ist also nur ein Thread-Start.
‫Beginnen Sie also mit einem Thread-Start-Delegaten, der die Methoden darstellt, die aufgerufen werden sollen, wenn der Thread mit der Ausführung
‫beginnt.
‫Dies wird also unsere Methode sein.
‫Diese dritte oder dritte Funktion, die nicht wirklich eine Methode ist, ist eine Funktion, weil
‫sie sich nicht in einer objektorientierten Klasse befindet, sondern auf eine Art und Weise, die diese Funktion erstellt.
‫Wie Sie sehen, brauchen Sie hier die Klammern nicht, da wir es hier nicht wirklich als Delegaten bezeichnen.
‫Gut.
‫Als nächstes müssen wir einfach diese Threads starten.
‫Also lassen Sie uns diesen Thread mit einem Punkt beginnen und zu diesem Anfang fädeln.
‫Und ich drücke einfach die Strg-Taste, habe fünf, um es zu starten, und sehe Hauptthread gestartet, Hauptthread
‫beendet Thread.
‫Eine Funktion wurde gestartet und versucht zu funktionieren.
‫Sie endeten also nicht, weil wir noch keine Abschlussnachricht implementiert haben.
‫Lassen Sie uns nun die gemeinsame Methode für diese beiden Bedrohungen oder Bedrohungen verwenden, eine, die sich anschließt, und prüfen wir,
‫was sich uns gemeinsamen Blöcken angeschlossen hat, der aufrufenden Bedrohung, bis die von dieser Instanz dargestellte Bedrohung
‫beendet wird, während weiterhin die Standardnachricht für gesendete Nachrichten ausgeführt wird Pumpen.
‫Was wir also tun werden, ist einfach zu kommen oder uns diesen beiden Drohungen anzuschließen.
‫Also diese Bedrohung mit der Hauptgefahr, das macht diese gemeinsame Methode und sie blockiert die Hauptgefahr für
‫diese Zeit.
‫Es wird also von der Hauptbedrohung genannt.
‫Deshalb blockiert es die Hauptbedrohung.
‫Daher wird es im Allgemeinen als Blockieren der anrufenden Bedrohung bezeichnet.
‫Und in unserem Fall ist die rufende Bedrohung die Hauptbedrohung, weil wir uns innerhalb der Hauptbedrohung befinden, wenn wir sie
‫rufen.
‫Okay, also schließen wir uns auch der zweiten Drohung an.
‫Also haben wir uns diesen beiden angeschlossen.
‫Und schreiben wir etwas auf die Konsole, CW, und sagen wir Thread eine Funktion, Don.
‫Und lass uns das Gleiche für den zweiten machen, also lass es uns noch einmal ausführen und
‫es wird nicht viel passieren, drücke die Steuerung um fünf, also bleibt meine Konsole
‫wach, der Hauptthread wurde gestartet, der dritte wurde gestartet Funktion.
‫Gut.
‫Damit wir jetzt sind heißt es, OK, drittes, einführen fertig und danach ist nur noch Hauptdrohung fertig.
‫Das ist also nichts Besonderes und nichts Neues.
‫Es führt das Zeug nur Schritt für Schritt aus.
‫So sieht es hier also aus.
‫Aber dann machen wir etwas Interessantes.
‫Lassen Sie uns hier einen Schlaf hinzufügen.
‫Also lassen wir die Drohung für drei Sekunden schlafen.
‫Also Drohschlaf.
‫Dreitausend Millisekunden.
‫Und was das bewirkt, ist, dass diese Methode nur die Methode sagt, der Thread gestartet wurde und dann
‫drei Sekunden gewartet wird.
‫Also lassen Sie es uns jetzt noch einmal laufen und tatsächlich um fünf mit Kontrolle.
‫Also hier begannen die Funktionen.
‫Und dann, nach einiger Überlegung, werfen Sie eine Funktion, hat Dunn das wirklich schnell reproduziert, so dass eins und zwei gestartet wurden
‫und nach drei Sekunden können Sie diese eine Funktion sehen.
‫Dunn versuchte zu funktionieren, Dunn und die Hauptbedrohung endeten.
‫Also Hauptthread und warten bis der Haupt- oder der dritte fertig ist.
‫Und das geschieht, weil wir hier mitmachen.
‫Also schließen wir uns Bedrohung eins an und sagen: OK, bitte warten Sie, bis wir fertig sind.
‫Wenn wir uns nun die gemeinsame Methode ansehen, gibt es noch andere interessante Dinge zu beachten.
‫Es gibt mehrere Überlastungen.
‫Wie Sie sehen können, gibt es hier nur einen oder wir haben hier null Parameter oder Argumente, die wir angegeben haben, aber
‫es gibt mehrere.
‫Wir können hier also ein weiteres Argument hinzufügen, nämlich die Zeit, die wir warten möchten, bevor wir fortfahren.
‫Ich werde hier also nur eine IV-Bedrohung verwenden, die tatsächlich einen Thread erstellt, der eine bestimmte Zeit in Anspruch nimmt, und wie
‫Sie sehen können, ein Zeitlimit von Millisekunden.
‫Nehmen wir an, wir warten eine Sekunde und geben dieser Bedrohung eine Sekunde, um sie zu beenden.
‫Und wenn dies innerhalb der Zeit geschieht, sagen wir Thread eine Funktion erledigt und ansonsten sagen wir so etwas wie Bedrohung.
‫Eine Funktion wurde nicht innerhalb einer Sekunde ausgeführt.
‫Gut.
‫Lassen Sie uns dieses Gelenk hier loswerden und den gesamten
‫Code dafür ersetzen.
‫Also lassen Sie es uns jetzt noch einmal ausführen.
‫Kontrolliere eine Fünf.
‫Also Frontfunktion, eine Bedrohung wurde nicht innerhalb einer Sekunde erledigt, um die Hauptbedrohung zu reduzieren.
‫Wie Sie sehen, wurde dies nicht innerhalb des angegebenen Zeitraums durchgeführt.
‫Aber jetzt fügen wir hier einen weiteren Code hinzu, da wir diese Bedrohung noch nie gesehen haben, eine Funktion wurde ausgeführt.
‫Lassen Sie uns also etwas wie thread hinzufügen, eine Funktion, die auf main zurückkommt.
‫Das bedeutet also, dass es so gut wie fertig ist oder vielleicht noch nicht Hauptsache ist.
‫Aber der Anrufer, lass es uns noch einmal mit der Kontrolle von fünf ausführen.
‫Also Bedrohung der Funktion gestartet, lassen Sie mich es noch einmal nennen, dann, OK, Hauptbedrohung endete und dann sehen Sie erst
‫nach dieser Zeit, also erst nach drei Sekunden hieß es Bedrohung einer Funktion, die wieder Farbe
‫hat.
‫Die Hauptdrohung war also schon erledigt und erst dann kam der Anrufer zurück, was die Hauptdrohung war.
‫Erst dann kam es zu, na ja, Zeile 30 oder eigentlich danach.
‫Also wurde es mit der main-Methode gemacht und erst dann wurde dieser Code hier ausgeführt.
‫Wie Sie sehen, hat es den Hauptthread nur für eine Sekunde blockiert, den Hauptthread erst, wenn es
‫fertig war.
‫Es heißt also, dass der aufrufende Thread blockiert wird, bis der durch diese Instanz dargestellte Thread beendet
‫wird oder die angegebene Zeit verstreicht, während weiterhin mehrere Kommentare dazu ausgeführt werden.
‫Pumpt so gut, dass Sie hier sehen können, dass Sie sagen können: OK, Myntra, bitte warten Sie eine Sekunde.
‫Und wenn es nicht passiert oder wenn der Dritte das Zeug nicht fertig macht, dann geht es weiter.
‫Es wird also durch zwei verbunden und dann wird nur gesagt, dass der Hauptthread des Kamden-Threads
‫fertig ist und nun, die Funktion von Thread eins läuft noch oder Thread eins läuft noch und schläft noch und
‫führt den Code danach aus.
‫Aber das tut es nicht rechtzeitig, wie Sie hier sehen können.
‫Die Hauptbedrohung wartete also nicht mehr, sondern sagte nur: OK, ich werde weitermachen, ich werde ohne
‫dich weitermachen.
‫Das ist die Sache mit dem Verbinden von Threads, die Sie hier sehen können, so funktioniert es.
‫Und dann schauen wir uns das an, dies ist eine Lebenseigenschaft.
‫Wenn also Thread 1 am Leben ist, gibt es diese Eigenschaft und erhält, wie Sie sehen können, einen Wert, der den
‫Ausführungsstatus der aktuellen Bedrohung angibt, was bedeutet, dass die Bedrohung abgeschlossen ist oder nicht?
‫Hier steht also, ob die Bedrohung noch am Leben ist, also wenn sie noch an dem Punkt ausgeführt wird, an dem dieser
‫Code ausgeführt wird, dann tun Sie etwas.
‫Also schreibe ich einfach so etwas wie Drohung, dass man immer noch Sachen macht.
‫Es wird also immer noch Code ausgeführt und ausgeführt.
‫Und ansonsten sage ich nur, Drohung eins wurde abgeschlossen.
‫Also CW-Thread eins abgeschlossen.
‫In Ordnung, und hier müssen wir natürlich die Zeichenfolge jetzt fertigstellen, schauen wir uns das noch einmal an.
‫Und der Hauptthread wurde beendet und tatsächlich wurde meine Konsole geschlossen.
‫Lassen Sie mich also mit der Kontrolle bei
‫fünf gestarteten Hauptthreads beginnen.
‫Zwei waren fertig.
‫Also heißt es: OK, ich werde nicht mehr warten.
‫Ich meine Faden.
‫Also führt es dann Thread zwei aus.
‫Dass man immer noch Sachen macht, bedeutet also, dass die Bedrohung man lebt, ausgeführt wird und erst danach die
‫Hauptbedrohung beendet wird.
‫Also wird dieser Code hier in Zeile 38 ausgeführt.
‫Und dann wird unsere Drohung, eine Funktion, die zur Farbe zurückkehrt, aufgerufen oder ausgeführt.
‫Gut.
‫Das können Sie also überprüfen und einfach überprüfen, OK.
‫Ist die Bedrohung lebendig oder nicht?
‫Und basierend darauf können Sie Dinge ausführen, und das ist ziemlich nützlich.
‫Nehmen wir nun an, wir wollen sehen, dass die Bedrohung immer noch regelmäßig Dinge tut.
‫Nehmen wir also an, wir verwenden es hier für eine Schleife und I ist gleich Null.
‫Ich blase 10 I plus plus.
‫Innerhalb dieser for-Schleife möchte ich diesen Code ausführen.
‫Und was es tun wird, ist nur zu sagen, dass die Bedrohung immer noch Dinge tut, und
‫dann wird es für, sagen wir, dreihundert Millisekunden schlafen.
‫Schlafen Sie also dreihundert, was bedeutet, dass wir davon zehn Hinrichtungen haben werden, bevor unsere Drohung abgeschlossen ist.
‫Lassen Sie uns das also noch einmal ausführen.
‫Bedrohung eins macht immer noch Sachen, die getan und getan wurden.
‫Und wie Sie sehen, wurden die zehn Male nicht ausgeführt, obwohl der Bedrohungsschlaf dreihundertzwanzig Sekunden
‫und Millisekunden lang war und dieser nur dreihundert Millisekunden.
‫Was dann getan wurde, ist, dass Bedrohung 1 mehrmals ausgeführt wurde. Wie Sie sehen können, gibt
‫es eine Überschneidung, bei der die Bedrohungsfunktion zurückkehrt.
‫Wie Sie sehen können, wird dies für Loop erst etwas später ausgeführt.
‫Die Reihenfolge ist also die folgende.
‫Wir starten damit.
‫Wir beginnen, Thread eins zu starten, warteten eine Sekunde.
‫Sie können also sehen, dass wir diesen One-Second-Join haben.
‫Wir verlieren hier also schon drei Hinrichtungen unseres Schlafes, was bedeutet, dass diese Drohung, eine macht
‫immer noch Sachen, hier eigentlich nur sechsmal, sieben oder siebenmal hingerichtet wird.
‫Und dann kommt die Bedrohungsfunktion zurück, weil sie gestartet wurde.
‫Dann wartete es eine Sekunde.
‫Da passierte nichts.
‫Erst dann fing es an, all diese schönen Sachen zu machen.
‫Da dies also zehnmal ausgeführt wird, wird dieser Schlaf mehrmals ausgeführt, bis er wieder Farbe hat.
‫Und dieser dritte fertige ist super schnell ausgeführt.
‫Es wird also nicht warten, weil es dort keinen Schlaf gibt.
‫Aber das ist im Allgemeinen das, was Sie mit diesen lebendig machen können.
‫Sie können also im Allgemeinen überprüfen, OK, ist es das Leben, ist es noch am Leben, ist es noch am Leben
‫und tun Sie Dinge, während sie am Leben sind, oder tun Sie andere Dinge, während sie leben, und tun Sie dann nichts oder etwas anderes, wenn es fertig
‫ist.
‫Das ist also ein sehr einfaches Beispiel für die Verwendung von Join und ist lebendig, und ich hoffe, Sie können das Konzept verstehen.
‫Wir sehen uns also im nächsten Video, in dem wir uns Aufgaben ansehen.