javascript - Bolehkah gelung tak terhingga digunakan? Atau adakah kita sebenarnya hidup dalam dunia kitaran yang tidak berkesudahan?
高洛峰
高洛峰 2017-05-31 10:34:05
0
6
879

Sebenarnya, soalan ini berkaitan dengan soalan ini: Bagaimana untuk melakukan pemberitahuan berjadual dan keluaran tepat pada masanya dalam PHP?

Pada masa lalu, guru selalu mengatakan bahawa anda tidak boleh menulis gelung yang tidak berkesudahan apabila menulis kod Ini adalah pepijat yang paling besar dalam fikiran saya, jadi apabila saya melihat semua jenis gelung yang tidak berkesudahan, saya rasa semua jenis. daripada penghinaan dan keterjeratan.

Tetapi saya dapati bahawa banyak perkara sebenarnya menggunakan gelung tak terhingga:

  1. php-resque Ada gelung tak terhingga di dalamnya Apabila saya melihatnya, saya serta-merta hilang perasaan

  2. Selepas melihat prinsip kerja penyemak imbas, gelung acara JS sebenarnya adalah gelung tak terhingga, dan kod kernel C++ nampaknya gelung tak terhingga

……

Saya tidak tahu berapa banyak perkara dalam gelung yang tidak berkesudahan

Adakah benar bahawa komputer kita berada dalam gelung yang tidak berkesudahan sejak ia dihidupkan Adakah CPU hanya berfungsi dalam gelung yang tidak berkesudahan? Tolong bantu saya menjelaskan perkara ini. Saya sangat keliru sekarang. Jika tiada gelung yang tidak berkesudahan, kod kami akan mati. Apakah peristiwa/isyarat yang mencetuskan panggilan balik apabila ia datang, dan bagaimana ia dilaksanakan? Adakah ia juga gelung tak terhingga?

Mungkin kita manusia berada dalam lingkaran yang tidak berkesudahan, sentiasa menerima maklumat dan kemudian memberi maklum balas Jika tidak, jika anda menghubungi saya dan saya boleh menjawab dengan segera, adakah anda benar-benar fikir anda yang memberitahu saya Adakah anda benar-benar mempunyai keupayaan untuk melakukannya? telefon saya balik? kelakar! Saya telah mendengar, okay?

Semoga Allah dapat menjernihkan kekeliruan, ^_^

Ditambah:

Semasa saya membaca maklumat ini, saya sering melihat perkataan ini:

libevent
libev
PCNTL
EventLoop
timerfd
epoll
kqueue
select
poll

Sila minta tuan untuk menjelaskan keraguan saya Apakah maklumat yang perlu saya baca dan buku apa yang perlu saya baca "Pemrograman Rangkaian Linux/UNIX"

Terima kasih!

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

membalas semua(6)
迷茫

Adakah komputer kita berada dalam gelung tak terhingga sejak ia dihidupkan Adakah CPU hanya berfungsi dalam gelung tak terhingga?

Adakah kerja berterusan merupakan gelung yang tidak terhingga?

Tetapi kitaran ini tidak mati, anda boleh menamatkan kitaran ini dengan mengklik Shutdown. 关机 来结束这个循环。


那些什么事件/信号来了就会触发回调,是怎么实现的呢,也是死循环吗?

是的,Eventloop需要持续的监听,这种监听只能通过这种方式实现,而我们看到的就是 事件发生 => 执行回调

Apakah peristiwa/isyarat yang mencetuskan panggilan balik apabila ia datang. Adakah ia juga gelung tak terhingga?

Ya, Eventloop memerlukan pemantauan berterusan ini hanya boleh dicapai dengan cara ini, dan apa yang kita lihat ialah kejadian peristiwa => , ia adalah abstraksi.

Tetapi ia tidak mati, anda boleh menutup penyemak imbas untuk menamatkan kitaran ini.

Atau mungkin kita manusia berada dalam gelung yang tidak berkesudahan, sentiasa menerima maklumat dan kemudian memberi maklum balas, jika anda menghubungi saya, saya boleh menjawab dengan segera Adakah anda benar-benar memberitahu saya saya balik? kelakar! Saya telah mendengar, okay?


Saya rasa orang lebih seperti mesin keadaan (FSM) daripada gelung tak terhingga.

Tukar keadaan mengikut input, dengan itu mengeluarkan nilai (dialog manusia)

Saya tidak tahu sama ada otak manusia melaksanakan arahan secara berurutan, tetapi orang boleh mengendalikan perkara dengan sempadan yang kabur, seperti memandu, memasak, mendengar, bercakap, membaca dan menulis dalam pelbagai bahasa, dll. Orang boleh ditarik keluar dari sesuatu yang tertentu. fikir pada bila-bila masa, dalam erti kata lain, terdapat banyak isyarat gangguan, mungkin tidak ada gelung yang tidak terhingga, kerana ia boleh diharamkan pada bila-bila masa.

🎜🎜Sila beritahu saya maklumat dan buku yang patut saya baca🎜🎜 🎜Bagaimana pula dengan melihat prinsip dan pelaksanaan komposisi komputer dan sistem pengendalian? 🎜
PHPzhong

Ayat dalam "Ruby Metaprogramming" sangat bagus, saya rasa sesuai diletakkan di sini

Tiada langsung pengaturcaraan meta, selalu ada pengaturcaraan sahaja.

Saya rasa perkara yang sama berlaku untuk gelung yang tidak terhingga Kewujudannya hanya bergantung pada cara anda menggunakannya Apabila tiada penyelesaian yang lebih baik, penting untuk menyelesaikan masalah. kod Elegance adalah sama pentingnya.

给我你的怀抱

Bolehkah kita menggunakan gelung tak terhingga?

Gelung tak terhingga != Gelung tak terhingga != Gelung kosong

Gelung tak terhingga ialah pepijat dan akan menyebabkan tersekat
Gelung tak terhingga, seperti: gelung peristiwa
Gelung kosong, seperti: tunggu putaran


Atau adakah kita sebenarnya hidup dalam dunia kitaran yang tidak berkesudahan?

Malah anda boleh bunuh diri untuk keluar dari kitaran

Jangan jelaskan
Jangan berfikiran liar, itu adalah tingkah laku kelas pertengahan untuk bercakap tentang falsafah secara karut
Jangan menjadi ahli falsafah rakyat

黄舟

Pernahkah anda menulis kod mikropengawal?
Sebentar lagi(1)
Keluar dengan bekalan elektrik terputus atau gangguan
Dan anjing jaga (anjing penjaga)

phpcn_u1582

Anda boleh menganggap sistem pengendalian sebagai gelung tak terhingga

Soalan ini terlalu besar dan sukar untuk dijelaskan

Tetapi apabila anda belajar pengaturcaraan, anda harus cuba mengelakkan gelung tak terhingga yang tidak perlu. Adalah lebih baik jika prosedur itu mempunyai permulaan dan penghujung, dan pemikirannya jelas.

巴扎黑

Daripada gelung tak terhingga, lebih baik untuk mengatakan bahawa gelung meta mempunyai permulaan dan penghujung seperti gelung lain, tetapi gelung lain adalah bahagian gelung meta Sebaik sahaja anda melepasinya, gelung itu akan hilang gelung tak terhingga telah berlalu, anda akan kembali ke titik asal.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan