I am trying to get 100000 string output and trying to achieve with multiple threads but when checking final result string, it only has 10000 line.
Here =>
string result = "";
private void Testing()
{
var threadA = new Thread(() => { result += A()+Environment.NewLine; });
var threadB = new Thread(() => { result += A() + Environment.NewLine; });
var threadC = new Thread(() => { result += A() + Environment.NewLine; });
var threadD = new Thread(() => { result += A() + Environment.NewLine; });
var threadE = new Thread(() => { result += A() + Environment.NewLine; });
var threadF = new Thread(() => { result += A() + Environment.NewLine; });
var threadG = new Thread(() => { result += A() + Environment.NewLine; });
var threadH = new Thread(() => { result += A() + Environment.NewLine; });
var threadI = new Thread(() => { result += A() + Environment.NewLine; });
var threadJ = new Thread(() => { result += A()+Environment.NewLine; });
threadA.Start();
threadB.Start();
threadC.Start();
threadD.Start();
threadE.Start();
threadF.Start();
threadG.Start();
threadH.Start();
threadI.Start();
threadJ.Start();
threadA.Join();
threadB.Join();
threadC.Join();
threadD.Join();
threadE.Join();
threadF.Join();
threadG.Join();
threadH.Join();
threadI.Join();
threadJ.Join();
}
private string A()
{
for (int i = 0; i <= 10000; i++)
{
result += "select * from testing" + Environment.NewLine;
}
return result;
}
But i dont get 100000,I just get 10000.Please let me known why?