gameServer/stresstest2.hs
author koda
Wed, 30 Jun 2010 12:55:33 +0200
changeset 3594 aeca3d8f1b29
parent 2948 3f21a9dc93d0
child 3947 709fdb89f76c
permissions -rw-r--r--
turn cReducedQuality into a LongInt and provide a series of quality flags (and best of all, this is still compatible with current frontend)

{-# LANGUAGE CPP #-}

module Main where

import IO
import System.IO
import Control.Concurrent
import Network
import Control.Exception
import Control.Monad
import System.Random

#if !defined(mingw32_HOST_OS)
import System.Posix
#endif

testing = Control.Exception.handle print $ do
    delay <- randomRIO (100::Int, 300)
    threadDelay delay
    sock <- connectTo "127.0.0.1" (PortNumber 46631)
    hClose sock

forks i = do
    delay <- randomRIO (50::Int, 190)
    if i `mod` 10 == 0 then putStr (show i) else putStr "."
    hFlush stdout
    threadDelay delay
    forkIO testing
    forks (i + 1)

main = withSocketsDo $ do
#if !defined(mingw32_HOST_OS)
    installHandler sigPIPE Ignore Nothing;
#endif
    forks 1