gameServer/NetRoutines.hs
changeset 3425 ead2ed20dfd4
parent 2867 9be6693c78cb
child 3435 4e4f88a7bdf2
equal deleted inserted replaced
3424:5543340db663 3425:ead2ed20dfd4
    24         cHandle <- socketToHandle socket ReadWriteMode
    24         cHandle <- socketToHandle socket ReadWriteMode
    25         hSetBuffering cHandle LineBuffering
    25         hSetBuffering cHandle LineBuffering
    26         clientHost <- sockAddr2String sockAddr
    26         clientHost <- sockAddr2String sockAddr
    27 
    27 
    28         currentTime <- getCurrentTime
    28         currentTime <- getCurrentTime
    29         
    29 
    30         sendChan <- newChan
    30         sendChan <- newChan
    31 
    31 
    32         let newClient =
    32         let newClient =
    33                 (ClientInfo
    33                 (ClientInfo
    34                     nextID
    34                     nextID
    48                     undefined
    48                     undefined
    49                     undefined
    49                     undefined
    50                     )
    50                     )
    51 
    51 
    52         writeChan coreChan $ Accept newClient
    52         writeChan coreChan $ Accept newClient
    53 
       
    54         forkIO $ clientRecvLoop cHandle coreChan nextID
       
    55         forkIO $ clientSendLoop cHandle coreChan sendChan nextID
       
    56         return ()
    53         return ()
    57 
    54 
    58     acceptLoop servSock coreChan nextID
    55     acceptLoop servSock coreChan nextID
    59     where
    56     where
    60         nextID = clientCounter + 1
    57         nextID = clientCounter + 1