Nitka.Metoda sleep () z wykorzystaniem snu/opóźnień w programach Java

Nitka.Metoda sleep () z wykorzystaniem snu/opóźnień w programach Java

W programowaniu Java często konieczne jest wprowadzenie opóźnienia lub przerwy w wykonaniu programu. Można to osiągnąć dzięki zastosowaniu Nitka.spać() metoda. W tym artykule omówimy, jaki wątek.Sleep () jest, dlaczego jest używany i jak używać go w programach Java do kontrolowanych opóźnień.

Co to jest wątek.Sleep () w Javie?

Nitka.Sleep () to metoda statyczna w Javie.Lang.Klasa wątków. Służy do tymczasowego zatrzymania wykonywania bieżącego wątku przez określony czas. Jest to przydatne w przypadkach, w których musisz wprowadzić opóźnienie w wykonaniu programu, na przykład, gdy chcesz zasymulować czas przetwarzania zadania.

Dlaczego warto używać wątku.Sleep () w Javie?

Istnieje kilka powodów, dla których możesz użyć wątku.Sleep () w twoich programach Java:

  • Aby wprowadzić opóźnienie: W niektórych przypadkach możesz przedstawić opóźnienie w wykonaniu programu. Można to zrobić za pomocą wątku.Metoda snu ().
  • Symulować czas przetwarzania: Kiedy opracowujesz program, który obejmuje dużo przetwarzania, możesz chcieć symulować czas przetwarzania zadania. Można to zrobić za pomocą wątku.spać().
  • Zsynchronizować wątki: Kiedy pracujesz z wieloma wątkami, możesz je zsynchronizować, aby współpracowały w skoordynowany sposób. Nitka.Sleep () można użyć do wprowadzenia opóźnienia w jednym wątku, aby synchronizuje się z innym.

Jak używać wątku.Sleep () w Javie

Używać wątku.Sleep () W Javie musisz wykonać te kroki:

  • Zadzwoń do wątku.Sleep () Metoda i przekaż liczbę milisekund, które chcesz spać obecny wątek. Nitka.sen (1000); // 1000 milisekund = 1 sekunda
    1 Nitka.sen (1000); // 1000 milisekund = 1 sekunda

  • Zwiń połączenie do wątku.sleep () w bloku próbnym. To dlatego, że wątek.Metoda sleep () rzuca przerywającą recepcję, jeśli sen zostanie przerwany przez inny wątek. spróbuj wątek.sen (1000); // 1000 milisekund = 1 sekunda catch (przerywanie e) e.printStackTrace ();
    12345spróbuj wątek.sen (1000); // 1000 milisekund = 1 sekunda catch (przerywanie e) e.printStackTrace ();

  • Załóżmy, że opracowujesz program, który obejmuje dużo przetwarzania. Chcesz zasymulować czas przetwarzania zadania. Możesz użyć wątku.sleep () w celu wprowadzenia opóźnienia w wykonywaniu programu i symulacji czasu przetwarzania. ProcessImulacja klasy publicznej public static void main (string [] args) System.na zewnątrz.println („zadanie początkowe…”); spróbuj wątek.sen (5000); // 5000 milisekund = 5 sekund catch (przerwanie e) e.printStackTrace (); System.na zewnątrz.println („Zadanie zakończone.");
    1234567891011ProcessImulacja klasy publicznej public static void main (string [] args) System.na zewnątrz.println („zadanie początkowe…”); spróbuj wątek.sen (5000); // 5000 milisekund = 5 sekund catch (przerwanie e) e.printStackTrace (); System.na zewnątrz.println („Zadanie zakończone.");

    W tym przykładzie program rozpoczyna się od wydrukowania „zadania początkowego…”. Następnie wprowadza opóźnienie 5 sekund za pomocą wątku.sen (5000). Po opóźnieniu drukuje „Zadanie zakończone.".

Przykład 2: Synchronizacja wątków

Załóżmy, że pracujesz z wieloma wątkami i chcesz je zsynchronizować, aby współpracowali w skoordynowany sposób. Możesz użyć wątku.sleep (), aby wprowadzić opóźnienie w jednym wątku, aby zsynchronizować z innym.

public Class ThreadSynchronizacja public static void main (string [] args) wątek t1 = new Thread (new runnable () public void run () systemowy.na zewnątrz.println ("Rozpoczął się wątek 1."); spróbuj wątek.Sleep (2000); // 2000 milisekund = 2 sekundy catch (przerywanie e) e.printStackTrace (); System.na zewnątrz.println („Wątek 1 zakończony.");); Wątek t2 = nowy wątek (new Runnable () public void run () System.na zewnątrz.println ("Rozpoczął się wątek 2."); System.na zewnątrz.println ("wątek 2 zakończony.");); t1.początek(); T2.początek();
1234567891011121314151617181920212223public Class ThreadSynchronizacja public static void main (string [] args) wątek t1 = new Thread (new runnable () public void run () systemowy.na zewnątrz.println ("Rozpoczął się wątek 1."); spróbuj wątek.Sleep (2000); // 2000 milisekund = 2 sekundy catch (przerywanie e) e.printStackTrace (); System.na zewnątrz.println („Wątek 1 zakończony.");); Wątek t2 = nowy wątek (new Runnable () public void run () System.na zewnątrz.println ("Rozpoczął się wątek 2."); System.na zewnątrz.println ("wątek 2 zakończony.");); t1.początek(); T2.początek();

W tym przykładzie tworzone i uruchamiane są dwa wątki. Wątek 1 wprowadza opóźnienie 2 sekundy za pomocą wątku.Sleep (2000), podczas gdy wątek 2 nie ma opóźnienia. Umożliwia to synchronizację wątków, aby działały razem w skoordynowany sposób.

Wniosek

W tym artykule omówiliśmy, jaki wątek.Sleep () jest, dlaczego jest używany i jak używać go w programach Java do kontrolowanych opóźnień. Nitka.Sleep () to prosty i skuteczny sposób na wprowadzenie opóźnienia w wykonaniu programu Java. Korzystając z niego, możesz symulować czas przetwarzania, synchronizować wątki i wprowadzać opóźnienia w swoim programie. Z informacjami przedstawionymi w tym artykule powinieneś być w stanie użyć wątku.Sleep () w twoich programach Java z pewnością.