Updating progress bar-threading related problem





Dear All,

I have raised this issue before, but havent been able to use them to make
a solution myself, and so I am floating it again:

I am developing a GTK interface for my program with the glade development
environment. I am looking for the following:

I have a main window, which calls another window on certain conditions.
This second window contains a progress bar, and a button OK. On clicking
the button[callback], the program calls a heavy weight function(which is
part of DLL that I have written in C) which takes a bulk amount of time
(close to 9 hours)to run certain processes and give results. In the
meanwhile, I want the status of this bulky function to be displayed in the
progress bar. I cant use functions or return value for retrieving the
fraction(in float) of the function that has been completed[amount of work
completed in the bulky function]. So in the bulky function, I write the
fraction of work done into a file, which, I want the GTK program to access
periodically for updating its progress bar.

I have already given a try with the following approach:

I initialised a boolean flag in main() which determines when I can start
updating progress bar. In the callback function of the OK button, I set
this value before calling the builk function, and also start a thread
function which checks values of flag, and accordingly update progress bar
by reading its value from file on which the bulky function is writing the
fraction into.

I cant give this code now[because I dont have it with me], could anyone
please guide me on how to get this done.

Thanks in advance,

Vijay

SORRY ABOUT THE SIGNATURE, THE FIREWALL DOES IT AUTOMATICALLY TO ANY
OUTGOING MAIL.

*************************************************************************************
DISCLAIMER 
This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may 
contain confidential and privileged information. 
Any use,distribution,copying or disclosure by any other person is strictly prohibited. If you have received 
this transmission in error please notify SETS immediately either by replying to this e-mail or by telephone 
+91-44-28205655 and then delete this e-mail. The sender does not accept any responsibility for any damage 
which you sustain as a result of software viruses or malicious programs. You should therefore scan 
attachments (if any) prior to opening them. 
************************************************************************************







[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]