Our program is executing unknown methods from a DLL. Sometimes those methods won't handle timeouts and will never return a value.
Thus, our Methodinfo.invoke(...) will be stuck on this line forever.
Is there any decent way to abort our method? I understand that i should probably run this method asyncronious which is no problem.
as requested here is some little example for visualisation:
 public string startTheDLLMethod(int timeout)
    {
        var methodinfo = "...";
        return methodGettingStuck(methodinfo); //todo, abort this after timeout
    }
    public string methodGettingStuck(methodinfo)
    {
        var1 = "";
        var2 = "";
        methodinfo.Invoke(var1, var2); //Stuck.
    }