Как уже отмечали другие, вы не можете делать это изначально в Matlab. Однако в системах Unix, например Linux или Solaris Я ранее использовал немного грязный хак для достижения желаемого эффекта.
Вместо вызова файла .m как функции с параметрами сохраните все данные параметров в файле .mat и напишите команду оболочки для вызова Matlab и запуска файла .m, например. myfunc.m как отдельная программа, например
!bash -c "ulimit -t 3;matlab -nodisplay < myfunc.m"
Это ограничит myfunc.m временем выполнения ЦП 3 секундами. Обратите внимание, что процессор не включает доступ к диску и т. Д. Есть и другие флаги, которые вы можете передать ulimit, если вам нужно другое поведение.
Внутри myfunc.m вам нужно будет сохранить данные, которые myfunc.m хочет вернуть в файл .mat, и снова загрузить их в вызывающую программу. Немного неприятного взлома, но я проверил его, и он работает. Обратите внимание на использование оболочки bash для внутренней команды ulimit.