Task queues to execute a task one by one in file downloader program. [modified]
-
Hello Everyone, I'm trying to automate file's downloading process from my server using winscp command line stfp downloader. It was required to process some standard output to detect errors and some events, so I redirected the standard output and standard input of process and set the shellexcute to false. Now I'm able to see the output messages on rich text box using asycn readline (BeginOutputhttp://msdn.microsoft.com/en-us/library/system.diagnostics.process.beginoutputreadline.aspx[^]) method provided in Process library. Now my problem, how can I write my program such that it is able to write commands to standard input asycn and at same time making sure that no command is missed, if previous command is under processing. Let say I've a text box and button..if I press a button then it writes the command on text box to standard input of the process and then it waits for the reply..and lets assume this whole task takes 2 seconds..but during this 2 seconds user can enter more commands which can not be ignored so must be added to some queue, which can executed later on. I'm not sure how should I achieve this? I'm sorry if I'm misunderstanding anything here..but I've no experience with mutli threading in C#..Please suggest some design pattern to do this..any help would be appreciated.. Thanks, Regards Shivam Kalra
modified on Friday, June 24, 2011 10:44 PM
-
Hello Everyone, I'm trying to automate file's downloading process from my server using winscp command line stfp downloader. It was required to process some standard output to detect errors and some events, so I redirected the standard output and standard input of process and set the shellexcute to false. Now I'm able to see the output messages on rich text box using asycn readline (BeginOutputhttp://msdn.microsoft.com/en-us/library/system.diagnostics.process.beginoutputreadline.aspx[^]) method provided in Process library. Now my problem, how can I write my program such that it is able to write commands to standard input asycn and at same time making sure that no command is missed, if previous command is under processing. Let say I've a text box and button..if I press a button then it writes the command on text box to standard input of the process and then it waits for the reply..and lets assume this whole task takes 2 seconds..but during this 2 seconds user can enter more commands which can not be ignored so must be added to some queue, which can executed later on. I'm not sure how should I achieve this? I'm sorry if I'm misunderstanding anything here..but I've no experience with mutli threading in C#..Please suggest some design pattern to do this..any help would be appreciated.. Thanks, Regards Shivam Kalra
modified on Friday, June 24, 2011 10:44 PM