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

时间:2021-08-06 00:08:22 


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)

标签:haskell,多线程服务器
0
投稿

猜你喜欢

  • python使用html2text库实现从HTML转markdown的方法详解

    2023-07-18 09:00:03
  • 最新IntelliJ IDEA 2020.2永久激活码(亲测有效)

    2023-07-09 01:45:14
  • SQL Server与Oracle、DB2的优劣对比

    2009-01-07 14:16:00
  • Python命令行参数定义及需要注意的地方

    2022-09-16 02:34:39
  • Advanced SQL Injection with MySQL

    2024-01-24 18:09:24
  • ubuntu下设置mysql自动备份的例子

    2024-01-21 18:09:08
  • javascript同页面多次调用弹出层具体实例代码

    2024-04-10 14:02:31
  • 基于keras输出中间层结果的2种实现方式

    2023-10-11 16:05:49
  • php注册系统和使用Xajax即时验证用户名是否被占用

    2023-09-12 05:27:55
  • python eval()函数使用详情

    2021-10-17 02:09:23
  • mysql查询本周内每天统计量按天展示的示例代码

    2024-01-22 07:05:01
  • 带农历的JavaScript日期时间js代码

    2010-08-01 10:29:00
  • Python中数字(Number)数据类型常用操作

    2022-06-01 20:58:47
  • css设计的具有亲和力的表格

    2008-03-16 19:28:00
  • Pycharm最全报错的原因与解决方法总结(推荐!)

    2023-10-26 04:20:03
  • 学习ASP的理由 分析小结

    2011-02-26 10:54:00
  • Python中异常捕获与处理的方法总结

    2023-12-10 07:48:24
  • Python字符串常规操作小结

    2023-12-02 08:33:23
  • Python 实现过滤掉列表中唯一值

    2021-09-26 23:13:55
  • 浅谈MySQL中的group by

    2024-01-18 22:53:54
  • asp之家 网络编程 m.aspxhome.com