Tôi không nhận được sự khác biệt thực tế (ngữ nghĩa) giữa hai "biểu thức".
Người ta nói "vòng lặp" phù hợp với "phản ứng" và "trong khi (đúng)" để "nhận", bởi vì "phản ứng" không trả về và "vòng lặp" là một hàm gọi cơ thể một lần nữa. đây là những gì tôi khấu trừ từ các nguồn - Tôi không thực sự quen thuộc với "andThen" được sử dụng). "Nhận" khối một Thread từ hồ bơi, "phản ứng" thì không. Tuy nhiên, đối với "phản ứng" một Thread được tra cứu có thể gắn vào hàm nào.Sự khác biệt giữa while (true) và loop là gì?
Vì vậy, câu hỏi đặt ra là: tại sao tôi không thể sử dụng "vòng lặp" bằng "nhận"? Nó cũng có vẻ hành xử khác nhau (và tốt hơn!) So với biến thể "while (true)", ít nhất đây là những gì tôi quan sát trong một profiler. Thậm chí còn lạ lẫm hơn khi gọi một bóng bàn với "-Dactors.maxPoolSize = 1 -Dactors.corePoolSize = 1" với khối "while (true)" và "receive" ngay lập tức (đó là những gì tôi mong đợi) - tuy nhiên, với "vòng lặp" và "nhận", nó hoạt động mà không có vấn đề - trong một Thread - làm thế nào của điều này?
Cảm ơn!
iirc sự khác biệt giữa phản ứng và nhận là nhận được occuppies một chủ đề trong khi phản ứng là chút "thông minh hơn" và chiếm một khi neeeded – Schildmeijer
Cảm ơn, tôi thêm vào thông tin cho câu hỏi - tuy nhiên, nó không giải thích sự khác biệt trong khi (true) và vòng lặp và mẫu sử dụng đi: receive-> while (true), react-> loop. Đối với tôi, receive-> loop cũng sẽ hoạt động và thậm chí tốt hơn ... – Ice09