Rumah >rangka kerja php >Swoole >Apakah perbezaan antara proses swole dan benang?
Perbezaan: 1. Proses ialah atur cara yang dijalankan dalam sistem, dan utas tergolong dalam proses Suatu proses boleh mempunyai berbilang utas, dan utas ialah pelaksana program; antara proses Kongsi mana-mana keadaan, dan pembolehubah boleh dikongsi antara utas.
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi Swoole 4, komputer DELL G3
Proses
1 Tiada keadaan dikongsi antara proses
2 Penjadualan proses diselesaikan oleh sistem pengendalian
3. Setiap proses Mempunyai ruang ingatan tersendiri
4. Komunikasi antara proses terutamanya dicapai melalui penghantaran isyarat Terdapat banyak kaedah pelaksanaan, seperti semaphore, paip, peristiwa, dll. Kecekapan komunikasi mana-mana kaedah adalah sangat tinggi. Ia perlu melalui kernel, menghasilkan kecekapan komunikasi yang agak rendah
5. Kerana ia adalah ruang memori bebas, apabila penukaran konteks, adalah perlu untuk menyimpan maklumat bagi timbunan panggilan pertama, maklumat setiap daftar CPU, memori maya, dan pemegang berkaitan terbuka dan maklumat lain, jadi pertukaran antara proses konteks adalah sangat mahal dan komunikasi menyusahkan.
Benang
1 Berkongsi pembolehubah antara utas menyelesaikan masalah komunikasi yang menyusahkan memerlukan kunci
2 berbilang utas, tetapi setiap utas akan berkongsi sumber yang diminta oleh sistem pengendalian daripada proses induk Ini termasuk memori maya, fail, dsb. Memandangkan ia adalah sumber kongsi, penggunaan sumber sistem yang diperlukan untuk mencipta utas adalah jauh lebih kecil daripada itu. Sehubungan itu, ia boleh Bilangan benang yang dicipta juga menjadi agak besar.
3 Selain itu, dari segi penjadualan, kerana memori dikongsi, terdapat lebih sedikit perkara yang perlu disimpan semasa penukaran konteks, yang menjadikan penukaran konteks lebih cekap.
Apakah itu proses?
Proses ialah program yang dijalankan dalam sistem Setelah program berjalan, ia adalah satu proses.
Sesuatu proses boleh dilihat sebagai contoh pelaksanaan program.
Teg: Satu proses tidak boleh mengakses pembolehubah dan struktur data proses lain Jika anda mahu satu proses mengakses sumber proses lain, anda perlu menggunakan komunikasi antara proses, seperti paip, fail, soket. , dsb.
Apakah benang?
Thread tergolong dalam proses dan merupakan pelaksana program.
Sesuatu proses mengandungi sekurang-kurangnya satu utas utama dan juga boleh mempunyai lebih banyak sub-utas Setiap utas menggunakan ruang tindanan proses yang menjadi miliknya.
Benang ialah entiti proses dan laluan pelaksanaan proses tersebut.
Teg: Berbilang rangkaian dalam proses yang sama akan berkongsi sebahagian daripada keadaan dan berbilang rangkaian boleh membaca dan menulis memori yang sama.
Pembelajaran yang disyorkan: tutorial swole
Atas ialah kandungan terperinci Apakah perbezaan antara proses swole dan benang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!