using System;
using System.Collections.Generic;
public class Test
{
public static void Main()
{
List<Action> actionList = new List<Action>();
string testParamter = "Testing!";
Console.WriteLine("Started adding");
actionList.Add(() => TestFunction(testParamter));
Console.WriteLine("Finished adding");
Console.WriteLine("Started executing");
foreach(Action action in actionList)
{
action();
}
Console.WriteLine("Finished executing");
}
public static void TestFunction(string parameter)
{
Console.WriteLine("Executed: " + parameter);
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKCnB1YmxpYyBjbGFzcyBUZXN0CnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKCXsKCQlMaXN0PEFjdGlvbj4gYWN0aW9uTGlzdCA9IG5ldyBMaXN0PEFjdGlvbj4oKTsKCQlzdHJpbmcgdGVzdFBhcmFtdGVyID0gIlRlc3RpbmchIjsKCQkKCQlDb25zb2xlLldyaXRlTGluZSgiU3RhcnRlZCBhZGRpbmciKTsKCQlhY3Rpb25MaXN0LkFkZCgoKSA9PiBUZXN0RnVuY3Rpb24odGVzdFBhcmFtdGVyKSk7CgkJQ29uc29sZS5Xcml0ZUxpbmUoIkZpbmlzaGVkIGFkZGluZyIpOwoJCQoJCUNvbnNvbGUuV3JpdGVMaW5lKCJTdGFydGVkIGV4ZWN1dGluZyIpOwoJCWZvcmVhY2goQWN0aW9uIGFjdGlvbiBpbiBhY3Rpb25MaXN0KQoJCXsKCQkgICAgYWN0aW9uKCk7CgkJfQoJCUNvbnNvbGUuV3JpdGVMaW5lKCJGaW5pc2hlZCBleGVjdXRpbmciKTsKCQkKCX0KCQoJcHVibGljIHN0YXRpYyB2b2lkIFRlc3RGdW5jdGlvbihzdHJpbmcgcGFyYW1ldGVyKQoJewoJICAgIENvbnNvbGUuV3JpdGVMaW5lKCJFeGVjdXRlZDogIiArIHBhcmFtZXRlcik7Cgl9Cn0=