创建Haskel插座客户端
我尝试将Haskell:
-- Logger
putStrLn "Create socket"
sock_logger <- socket AF_INET Stream 0
putStrLn "Bind socket"
connect sock_logger (SockAddrInet 5000 0)
putStrLn "Listen socket"
listen sock_logger 2
putStrLn "Logger listening on port 5000..."
(conn_logger, _) <- accept sock_logger
putStrLn "Logger connection accepted"
SCOCKET由其他应用程序创建的SCOCKET连接到创建的套接字。但是在连接sock_logger(sockaddrinet 5000 0)
helloworld-exe.EXE: Network.Socket.connect: <socket: 440>: failed (Cannot assign requested address (WSAEADDRNOTAVAIL))
之后 我使用SockAddrinet 5000 0创建的所有插座。这是否取决于addlress(也许需要127.0.0.1而不是Local Host?)
I try to connect to created socket by haskell:
-- Logger
putStrLn "Create socket"
sock_logger <- socket AF_INET Stream 0
putStrLn "Bind socket"
connect sock_logger (SockAddrInet 5000 0)
putStrLn "Listen socket"
listen sock_logger 2
putStrLn "Logger listening on port 5000..."
(conn_logger, _) <- accept sock_logger
putStrLn "Logger connection accepted"
Scocket already created by other application. But after connect sock_logger (SockAddrInet 5000 0)
i get
helloworld-exe.EXE: Network.Socket.connect: <socket: 440>: failed (Cannot assign requested address (WSAEADDRNOTAVAIL))
How can i connect to socket as client (without creation new socket)
All sockets i create with SockAddrInet 5000 0. Can it depends on addlress (maybe need 127.0.0.1 instead localhost?)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
也许您正在寻找 tupletohostaddress ,如所示
Perhaps you're looking for
tupleToHostAddress
, as inThx Daniel Wagner,确实需要使用
tupletohostaddress(127、0、0、1)
和list.
是错误的。正确版本:Thx Daniel Wagner, it's really need to use
tupleToHostAddress (127, 0, 0, 1)
andlisten ...
is wrong. Right version: