- From: Neil Stewart <nstewart@cadence.com>
- Date: Thu, 27 May 1999 17:50:05 +0100
- To: libwww Mailing List <www-lib@w3.org>
Henrik Frystyk Nielsen wrote: > > I am not sure - I have the same problem on NT where a console app like > the tiny browser for some reason can't register stdin even though it is > in fact defined as a socket. > > Despite doing something like polling I am not sure what to do except > rolling your own. if you want to do polling then you can register an > event handler with a timeout of, say 100 ms - just to see if that works. > > Henrik OK, I've decided that polling is acceptable, as it's checking for user input which doesn't happen very quickly. However, I now need to initiate HTTP requests in the middle of my timer callback function. The calback itself works, but I can't see how to initiate a request without actually actioning the request. Previously, I had a main function that did this: initialiseLibwww(); while(1) { waitForURL(); HTChunk* chunk = HTLoadToChunk(url, request); char* buf = HTChunk_data(chunk); returnBuffer(buf); } ie. wait for a request, action it, and return the buffer pointer. This works fine, though I can't get user input while downloading files. So I moved on to a main function that does this: initialiseLibwww(); HTTimer* myTimer = HTTimer_new(NULL, timerCallback, ...); HTEventList_newLoop(); /*+++ theoretically never returns! */ and had a separate callback function like this: checkForURL(); if(no URL) return; ???? [download URL to local buffer] So my problem is, what to do at ???? to initiate a request? I don't think I can do a HTLoadToChunk, as it wont return until the request has been actioned. And anyway, I don't think libwww is very happy about being re-entered! Has anyone else done anything like this? Or can you point me in the direction of an example application that does this (I couldn't find anything relevant when I looked, but I may have missed something). Thanks, Neil -- Neil Stewart | Cadence Design Systems Ltd Consulting Engineer | 1 Bell Square email: nstewart@cadence.com | Brucefield Industrial Park phone/vmail: 01506 595072 | Livingston, SCOTLAND, EH54 9BY
Received on Thursday, 27 May 1999 12:50:25 UTC