脚本专栏 
首页 > 脚本专栏 > 浏览文章

haskell实现多线程服务器实例代码

(编辑:jimmy 日期: 2024/11/27 浏览:3 次 )

复制代码 代码如下:
module Main where

import Network.Socket
import Control.Concurrent

main :: IO ()
main = do
    sock <- socket AF_INET Stream 0
    bindSocket sock (SockAddrInet 4242 iNADDR_ANY)
    listen sock 10240
    mainLoop sock

mainLoop :: Socket -> IO ()
mainLoop sock = do
    conn <- accept sock
    forkIO $ runConn conn
    mainLoop sock

runConn :: (Socket, SockAddr) -> IO ()
runConn (sock, tcp) = do
    sms<-recv sock 1024
    peeraddr <- getPeerName sock
    putStrLn sms
    runConn (sock, tcp)

上一篇:详细介绍Python语言中的按位运算符
下一篇:tornado框架blog模块分析与使用
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap