using System;
using System.Threading;
public class Program
{
public static void Add(int a, int b, Action<int> callback) {
new Thread(() => {
Thread.Sleep(500); // block for 500ms
callback(a + b);
}).Start();
}
public static void Main()
Add(1, 2, result =>
Console.WriteLine(result);
});
Thread.Sleep(1000);