Multi-threading in MATLAB
If you want to run a batch of different functions on different processors, you can use the Parallel Computing Toolbox, more specifically, a parfor loop, but you need to pass the functions as a list of handles.
funList = {@fun1,@fun2,@fun3};dataList = {data1,data2,data3}; %# or pass file names matlabpool open parfor i=1:length(funList) %# call the function funList{i}(dataList{i});end
Edit:Starting with R2015a matlabpool
function has been removed from Matlab, you need to call parpool
instead.
Try looking at the Parallel Computing Toolbox. (I'm unfortunately not too familiar with it, but that seems to be the right place.) Look at gather
and parallel for-loops.