我正在尝试让多个客户端连接到服务器.我设法做的是通过使用服务器将一个客户端连接到服务器:
main = withSocketsDo $ do
socket <- listenOn port
(handle, host, portno) <- accept socket
hSetBuffering handle LineBuffering
msg <- hGetLine handle
putStrLn $ "The client says: " ++ msg
hClose handle
sClose socket
putStrLn "Server is done."
Run Code Online (Sandbox Code Playgroud)
并为客户:
main = withSocketsDo $ do
handle <- connectTo "localhost" port
hSetBuffering handle LineBuffering
hPutStrLn handle "Hello!"
hClose handle
Run Code Online (Sandbox Code Playgroud)
这些显然仅用于测试目的;)
现在,我已经读过我需要使用forkIO来使多个客户端连接到这个服务器.但是我无法找到如何使用forkIO或如何管理将要连接的多个客户端.有人可以向我解释我应该做些什么吗?
提前致谢!