Điều gì xảy ra với các ứng dụng UI hiện đại khi chúng không ở phía trước?


19

Nếu tôi khởi động ứng dụng Modern-UI và sau đó chuyển sang một ứng dụng khác hoặc một chương trình bình thường đang chạy trên máy tính để bàn, điều gì xảy ra với ứng dụng đầu tiên? Tôi đã nghe một cái gì đó về ứng dụng đầu tiên bị đình chỉ, nhưng nhận ra rằng tôi thực sự không biết điều đó.

Ý tôi là, bạn có thể viết một ứng dụng SETI @ Home ( BOINC ) nếu bạn muốn, hoặc các ứng dụng không ở phía trước sẽ luôn bị treo? Bạn có thể thay đổi điều đó? Tôi có thể thấy việc thay đổi dựa trên các tài nguyên có sẵn, chạy từ AC so với pin, v.v.

Sáng nay tôi đã nghe nói về một chiếc iPad đã được phục hồi nhờ ứng dụng "Tìm iPad của tôi" và đang tự hỏi liệu bạn có thể viết một thứ như ứng dụng Modern-UI hay không và nó có hoạt động mà không phải là ứng dụng chạy trước. (Tôi biết rằng bạn chỉ cần viết một dịch vụ Windows hoặc tương tự, đó không phải là điều tôi đang hỏi.)


1
Việc so sánh với ứng dụng Find-my-iOS-device-App là không liên quan; vì nhà cung cấp iOS (apple) có thể cho phép Ứng dụng iOS bất cứ điều gì họ muốn. Tôi đang xem xét để loại bỏ nó khỏi câu hỏi để tránh nhầm lẫn. không ai khác nghĩ gì?
kluka

@klyonrad Nó liên quan đến tôi vì đó là lý do duy nhất tôi hỏi câu hỏi này để bắt đầu và đưa ra một ví dụ về lý do tại sao một người nào đó có thể quan tâm ngay từ đầu. Tôi rất muốn bạn để lại câu hỏi một mình.
Đánh dấu

Câu trả lời:


23

Nếu tôi khởi động ứng dụng Modern-UI và sau đó chuyển sang một ứng dụng khác hoặc một chương trình bình thường đang chạy trên máy tính để bàn, điều gì xảy ra với ứng dụng đầu tiên?

Ứng dụng đi vào trạng thái treo - bạn có thể kiểm tra tài nguyên của nó trong trình quản lý tác vụ.

Ứng dụng sẽ bị treo khi bạn không sử dụng chúng, đây là hiệu suất. Khi bị treo, bạn sẽ không cảm thấy hệ thống của mình 'lag' (tức là sự chậm lại được quy cho việc chạy một ứng dụng chuyên sâu trong nền).

Windows 8 được thiết kế để ghi nhớ rằng khi bất kỳ ứng dụng nền nào không hoạt động, nó không nên sử dụng nhiều CPU, vì vậy hệ thống của bạn hoạt động tốt trong ứng dụng đang hoạt động.

Bất kỳ ứng dụng kiểu Metro nào cũng thuộc một trong 4 trạng thái vòng đời tại bất kỳ thời điểm nào:

  • Không chạy
  • Đang chạy
  • Đình chỉ
  • Chấm dứt

Khi ứng dụng chuyển tiếp giữa các trạng thái, nó nhận được các sự kiện vòng đời giúp cung cấp trải nghiệm hiệu suất cao và nhất quán cho người dùng.

nhập mô tả hình ảnh ở đây

Có một số blog MSDN có thể giúp bạn thực hiện những gì bạn muốn.

Quản lý vòng đời ứng dụng để ứng dụng của bạn cảm thấy "luôn sống"

Làm việc hiệu quả khi ứng dụng của bạn không hoạt động

Làm việc hiệu quả trong nền - nhiệm vụ nền


1
Tại sao downvote? Hãy quan tâm để bình luận để tôi có thể cải thiện bài viết.
avirk

Điều này trả lời câu hỏi của tôi, cảm ơn! (và tôi cũng đã bỏ phiếu cho nó, không biết về bất kỳ phiếu bầu nào.)
Mark Allen

3
@thetechfreak họ sẽ tiếp tục tải xuống mà không cần tạm dừng, Windows đang sử dụng tính năng BackgroundDownloadernày sẽ không tạm dừng tải xuống khi ứng dụng của bạn không ở phía trước. Ngoài ra, bạn có thể tải xuống / tải lên mà không bị gián đoạn khi ứng dụng của bạn không ở phía trước.
avirk

1
Tôi đặc biệt đánh giá cao các liên kết - Tôi cảm thấy tốt hơn nhiều về các ứng dụng hiện đại.
Mark Allen

1
@HaydnWVN đừng lo lắng! Chỉnh sửa 500 bài viết sẽ là vàng. :)
avirk
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.