Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Làm sao bỏ qua một hàm khi quá thời gian quy định

  1. #1
    Ngày gia nhập
    04 2011
    Bài viết
    2

    Question Làm sao bỏ qua một hàm khi quá thời gian quy định

    Tình hình là em đang học về lập trình socket, bài tập là viết chương trình với server là ngân hàng và các client là máy ATM. Sử dung thư viện <winsock2.h> . Ở Server em sử dụng một mảng SOCKET với mỗi phần tử là một kết nối với 1 máy ATM.

    Em thắc mắc một chỗ là khi các client gửi thông tin cho sever, client phải chạy hàm send(...) và server
    chạy hàm recv(...) trên cùng một SOCKET cố định, vậy nếu một client đang gặp vấn đề gì đó hoặc đang chờ người dùng nhập thông tin thì không send ngay được, dẫn đến tình trạng server phải chờ và cả các client khác cũng phải chờ tới lượt để send.

    Nhờ các Anh, Chị chỉ giúp là liệu có hàm nào để server bỏ qua luôn 1 hàm recv ở server khi quá một thời gian quy định ( để server và các client khác không phải chờ một client quá lâu).
    Hoặc có cách nào khác để giải quyết vấn đề này không, Ai biết giúp dùm e, Thanks nhiều

  2. #2
    Ngày gia nhập
    03 2010
    Nơi ở
    My Home
    Bài viết
    772

    Mỗi một socket ở client (connect) & server (accept) tạo cho nó một thread bắt các sự kiện. Trong mỗi thread sử dụng hàm select() để nhận biết các tín hiệu mạng đẩy lên (cũng có thể dùng WSAWaitForMultipObject(...) & EnumNetworkEvent() để làm việc này). Nghiên cứu hàm select của socket là OK.

  3. #3
    Ngày gia nhập
    04 2011
    Bài viết
    2

    Có thể cho em ít ví dụ hoặc tài liệu về vấn đề này ko, em hiện mới là SV năm 2 nên còn chưa biết nhiều lắm, mả google thử những thứ trên thì khá ít ví dụ mà toàn khó hiểu

  4. #4
    Ngày gia nhập
    03 2010
    Nơi ở
    My Home
    Bài viết
    772

    http://www.tenouk.com/Module41.html
    Đọc mấy cái example này là hiểu được thôi.

Các đề tài tương tự

  1. thời gian trên datetimeinput không được nằm trong khoản thời gian có sẳn
    Gửi bởi hungzany trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 04-06-2013, 09:23 AM
  2. ADO.NET Gán thời gian hệ thống theo 1 thời gian có trước bằng SetSystemTime bị lệch giờ là do đâu?
    Gửi bởi vumanhtuan87 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 3
    Bài viết cuối: 09-08-2012, 08:57 AM
  3. Lấy thời gian hiện tại + Chỉnh thời gian trong Windows
    Gửi bởi ncandy trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 8
    Bài viết cuối: 26-03-2011, 10:29 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn