Вы могли попытаться сделать многопоточность.
Вы могли сделать на скорую руку сценарий, который делает системный вызов (использующий shell_exec), который называет php двоичный файл со сценарием, чтобы сделать Вашу работу как параметр. Но я не думаю, что это - самый безопасный путь. Возможно, Вы можете материал thighten chrooting процесс php и другой материал
, С другой стороны, существует класс в phpclasses, которые делают тот http://www.phpclasses.org/browse/package/3953.html . Но я не знаю специфических особенностей реализации
Вы можете использовать Delegate.CreateDelegate
, если типы подходят.
Например:
var func = (Func<bool>) Delegate.CreateDelegate(typeof(Func<bool>), mi);
MethodAcceptingFuncParam(func);
Обратите внимание, что если функция выполняется много раз в ] MethodAcceptingFuncParam
, это будет намного быстрее, чем вызов mi.Invoke
и приведение результата.
Используйте Invoke:
MethodAcceptingFuncParam(() => { return (bool)mi.Invoke(null, null); })