Tôi có một ứng dụng khách-máy chủ mà khách hàng đang sử dụng thiết bị Windows Mobile 6, được viết bằng C++ và máy chủ có đầy đủ Windows và được viết bằng C#.Giao tiếp máy chủ-khách hàng đa hướng không đồng bộ trên cùng một ổ cắm mở?
Ban đầu, tôi chỉ cần nó để gửi thư từ máy khách đến máy chủ, với máy chủ chỉ gửi lại xác nhận rằng nó đã nhận được thư. Bây giờ, tôi muốn cập nhật nó để máy chủ thực sự có thể gửi tin nhắn cho khách hàng để yêu cầu dữ liệu. Vì tôi hiện đã thiết lập nó nên máy khách chỉ ở chế độ nhận sau khi nó gửi dữ liệu đến máy chủ, điều này không cho phép máy chủ gửi yêu cầu bất cứ lúc nào. Tôi sẽ phải đợi dữ liệu khách hàng. Suy nghĩ đầu tiên của tôi là tạo một luồng khác trên máy khách với một ổ cắm mở riêng biệt, lắng nghe các yêu cầu máy chủ ... giống như máy chủ đã có đối với máy khách. Có cách nào, trong cùng một luồng và sử dụng cùng một socket, cho tất cả các máy chủ gửi yêu cầu bất cứ lúc nào?
Bạn có thể sử dụng thứ gì đó để ảnh hưởng của WaitForMultipleObjects()
và chuyển cho nó bộ đệm nhận và sự kiện cho biết dữ liệu được gửi không?