Ho un file di testo chiamato "vholders.txt".
Sto facendo più thread come puoi vedere qui, quei thread lavorano con i loro dati dati e alla fine scrivono il loro output su vholders.txt
. Ma ottengo IO eccezione perché il file viene utilizzato da un altro thread. Quindi, come posso scrivere su vholders.txt
file senza entrare in collisione con altri thread. La sequenza di quale thread deve scrivere per prima non ha importanza.
questo è il mio codice:
public void execute()
{
for(int x=0;x<entered_length;x++)
{
ThreadPool.QueueUserWorkItem(new WaitCallback(PooledProc),x);
}
}
private void PooledProc(object x_)
{
string output = string.Empty;
//does the processing...and assign output its value...
/*this is where I get error*/
StreamWriter sw = File.AppendText("vholders.txt"); //error, file is being used by another process
sw.WriteLine(output);
sw.Close();
/*Now how can I write the output value to the text file vholders.txt without getting IO Exception*/
}