
Rebuilding of the network package with changed safety helped but I
don't think this is the solution. BTW accept is declared as safe. What
is the reason of declaring recvFrom as unsafe? I think this breaks
highly required feature. Apparently it's impossible to make concurrent
server for non connection based protocols.
2008/3/14, Vitaliy Akimov
Hello, I have a problem with building multithreaded UDP server. If main thread is waiting for new request in recvFrom all other threads are blocked too. I've checked every variant with forkIO,forkOS,-threaded etc, nothing's helped. After reading GHC docs I've understood this is happened becouse foreign function call from recvFrom (network library) is marked to be unsefe, so it's execution blocks every other thread. How can I resolve it?
Thank you.
Vitaliy.