I have a simple question: what's the advantage of instantiating a C# delegate as opposed to just passing the function reference? What I mean is:

Why do:

Thread t = new Thread(new ThreadStart(SomeObject.SomeMethod));

When you can do:

Thread t = new Thread(SomeObject.SomeMethod);

Both will compile and work in my experience...am I missing something?

Edit
Report