Perbezaan antara tidur dan tunggu

Perbezaan antara tidur dan tunggu

Tidur vs Tunggu

Mesin seperti komputer menggunakan bahasa buatan untuk membuat program, mengawalnya, dan membolehkan mereka menyampaikan arahan dan mengekspresikan algoritma. Bahasa ini dipanggil bahasa pengaturcaraan.

Sebelum kedatangan komputer, bahasa pengaturcaraan telah digunakan dalam alat tenun dan piano. Memandangkan penggunaan komputer menjadi lebih biasa, kini terdapat beberapa bahasa pengaturcaraan yang digunakan.

Terdapat beberapa bahasa komputer termasuk bahasa peringkat tinggi seperti: Basic, C, C ++, Fortran, Pascal, dan Java. Setiap mesin maya dan CPU mempunyai bahasa komputer sendiri, masing -masing dengan kelemahan dan kekuatannya sendiri, dan setiap mesin maya menjalankan benang ketika dimulakan. Utas ini melaksanakan kod aplikasi dalam program. Ia boleh membuat program berjalan lebih cepat dan membantu dalam prestasi dan kegunaannya terutama apabila pelbagai benang digunakan.

Mesin maya, seperti mesin maya java, menyokong konsep multi-threading dengan benang keutamaan yang lebih tinggi yang dilaksanakan terlebih dahulu melalui benang keutamaan yang lebih rendah yang memastikan pembahagian masa pemprosesan yang adil.

Ia menggunakan kaedah pengurusan benang yang boleh membuat, mengawal, dan menamatkan aliran kawalan atau benang di ruang bersama. Dua daripada kaedah pengurusan benang ini adalah menunggu dan kaedah tidur.

Kedua -dua kaedah ini berasingan. Kaedah tidur mengawal pelaksanaan benang dan menangguhkan tindakan seterusnya sementara kaedah tunggu tidak mengawal pelaksanaan benang untuk membiarkan benang lain berjalan.

Kaedah tunggu ditakrifkan dalam kelas objek dan menghantar benang semasa ke dalam keadaan yang tidak boleh dilancarkan. Ia digunakan bersama dengan memberitahu dan memberitahu kaedah untuk membiarkan kod pelaksanaan objek jeda sementara dan untuk meneruskannya kemudian.

Ia berfungsi dengan memanggil objek kunci dan membiarkan benang semasa menyegerakkannya. Tunggu akan melepaskan kunci dan akan meletakkan utas dalam senarai tunggu dan biarkan benang lain disegerakkan dengan menyebabkan benang asal bangun. Pengaturcara menentukan masa tertentu apabila pelaksanaan bermula lagi.

Kaedah tidur, sebaliknya, ditakrifkan sebagai kaedah statik. Ia menangguhkan pelaksanaan benang dan bukan objek serta menangguhkan benang yang sedang dilaksanakan. Ia menghantar benang semasa ke dalam keadaan tidak dapat dijalankan untuk beberapa waktu. Ia boleh menjejaskan tingkah laku aplikasi yang berbilang threaded kerana ia menyimpan kunci penyegerakan benang semasa. Sebaik sahaja benang berada di blok yang disegerakkan, tiada benang lain boleh memasuki blok.

Ringkasan:

1."Tidur" adalah kaedah pengurusan benang yang ditakrifkan sebagai kaedah statik sementara "tunggu" adalah kaedah pengurusan thread yang ditakrifkan dalam kelas objek.
2.Tidur adalah kaedah yang melaksanakan benang semasa menunggu adalah kaedah yang melaksanakan objek.
3.Tidur menyimpan kunci penyegerakan benang semasa dan mempengaruhi tingkah laku aplikasi semasa menunggu tidak.
4.Tidur mengawal pelaksanaan benang dan tidak membenarkan benang lain dalam blok yang disegerakkan sementara tunggu tidak mengawal pelaksanaan benang untuk membiarkan benang lain berjalan.