Hi,
In messing around a bit further with the http server code, I decided to
have a go at making the HTTP server multithreaded. In this case, I
wanted the web server to function such that when a HTTP request is
received, a new thread is created whose purpose is to handle the HTTP
request. In other words, the http_server_serve() function is made a
thread, as opposed it being just a function. However, in making the
changes, the execution seems to result in the web server hanging, with
the HTTP handler thread not executing at all. This seem to be the case
because inserting a call to sleep (via the timer connection) in main()
resulted in the HTTP handler function executing. I would have thought
that as soon as a HTTP request is received, the main thread would block,
and from there schedule the HTTP handler thread (I have invoked start()
on this thread, by the way). At the moment, it seems that the main
thread blocking seems to result in the entire web server hanging.
Any ideas as to what's going on?
Peter