Vì bạn đã thêm ghi chú về các ví dụ thực tế vào câu hỏi của bạn, tôi sẽ cung cấp cho bạn một số ví dụ về các dịch vụ tôi đã viết cho các ứng dụng doanh nghiệp (bạn không nói nếu bạn là lập trình viên ứng dụng doanh nghiệp nhưng tôi đoán là hầu hết các lập trình viên C # VS2010) . Tôi nghĩ rằng bạn đang tìm kiếm một ý tưởng về những gì các nhà phát triển không làm việc cho Microsoft có thể viết.
Một dịch vụ theo dõi nhịp tim kiểm tra xem các chương trình khác có còn chạy không (điều này có thể cũng hoạt động như một nhiệm vụ theo lịch trình, nhưng được triển khai như một dịch vụ).
Một dịch vụ viết báo cáo hoạt động thông qua hàng đợi các yêu cầu báo cáo, chạy các báo cáo và gửi chúng đến các máy in khác nhau tùy thuộc vào máy in nào bận. Điều này đã giúp giảm tải một lượng công việc khá lớn từ một ứng dụng cũ và cho phép báo cáo đang chạy được chia sẻ bởi nhiều hộp giá rẻ chạy dịch vụ.
Nó được triển khai như một dịch vụ để nó chạy liên tục, tự động khởi động lại khi khởi động lại và có thể sử dụng giao diện dịch vụ windows tiêu chuẩn để bắt đầu, dừng, tạm dừng, v.v. Ngoài ra, nếu đó là một nhiệm vụ theo lịch trình thì nó cần phải bắt đầu nhận dữ liệu từ các chương trình khác hoặc nguồn liên tục (hàng đợi, tệp, cơ sở dữ liệu) thay vì có sẵn để các chương trình khác gọi (ổ cắm, đường ống).
Phần máy chủ của ứng dụng khách / máy chủ đó cũng được triển khai như một dịch vụ để nó khởi động lại khi khởi động lại, v.v. Có một dự án khác với .exe chạy cùng một chương trình không phải là dịch vụ, để dễ dàng hơn gỡ lỗi trên các máy phát triển.
Tôi hy vọng điều đó sẽ giúp. Các câu trả lời khác là câu trả lời chung tốt hơn, đặc biệt là ý tưởng rằng các tác vụ theo lịch trình có thể dễ dàng hơn để viết và quản lý cho hầu hết các mục đích hiện nay.