Torna al Thread
using System.Threading;
public class BackgroundWorker
{
Thread _innerTH = null;
private int _progress;
public int Progress
{
get { return _progress; }
}
private object _result;
public object Result
{
get { return _result; }
}
public BackgroundWorker()
{
_progress = 0;
_result = null;
}
public delegate void DoWorkerEvH(ref int progress, ref object result, params object[] args);
public event DoWorkerEvH DoWork;
public void RunWorker(params object[] args)
{
_innerTH = new Thread(() =>
{
_progress = 0;
DoWork.Invoke(ref _progress, ref _result, args);
_progress = 100;
});
_innerTH.Start();
}
}