Câu hỏi phỏng vấn Flutter
Câu hỏi

Sự khác biệt giữa async v...

Câu trả lời

Trong ngôn ngữ lập trình Dart, từ khóa asyncasync* đều được sử dụng để xử lý các tác vụ bất đồng bộ, nhưng chúng có những đặc điểm khác nhau:

  • async: Khi bạn thêm từ khóa async vào một hàm, điều đó có nghĩa là hàm đó sẽ thực hiện một số công việc có thể mất một thời gian dài. Hàm này sẽ trả về kết quả được bọc trong một đối tượng Future. Bạn có thể lấy kết quả đó bằng cách sử dụng await để chờ đợi Future hoàn thành[1].

  • async*: Từ khóa async* được thêm vào để tạo ra một hàm trả về nhiều giá trị tương lai, mỗi lần một giá trị. Kết quả được bọc trong một đối tượng Stream. Đây được gọi là hàm sinh bất đồng bộ (asynchronous generator function). Bạn sử dụng yield để trả về một giá trị thay vì return vì bạn không rời khỏi hàm. Bạn cũng có thể sử dụng await for để chờ đợi từng giá trị được phát ra bởi `Stream...

senior

senior

Gợi ý câu hỏi phỏng vấn

middle

Các toán tử nhận biết giá trị null là gì?

middle

ScopedModel / BLoC Pattern là gì?

senior

Trong Flutter, tại sao phương thức build() trên State mà không phải StatefulWidgets?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào