in my python program to upload a file to the internet, im using a GTK progress bar to show the upload progress.  But the problems that im facing is that the progress bar does not show any activity until the upload is complete, and then  it abruptly indicates upload complete. im using pycurl to make the http requests...my question is -
do i need to have a multi-threaded application to upload the file and simultaneously update the gui? or is there some other mistake that im making? 
Thanks in advance!
More than likely the issue is that in your progress callback, which is where I presume you're updating the progress bar, you're not making a call to manually update the display i.e. run through the GUI's event loop. This is just speculation though, if you can provide more code, it might be easier to narrow it down further.
The reason you need to manually update the display is because your main thread is also performing the upload, which is where it's blocking.
Progress bar not updating during operation