Папка, в которую записываются файлы AttachedFiles
folder = getAttachedFilesFolder
folder = getAttachedFilesFolder(FileName)
| Вектор символов, указывающий расположение файлов из заданий |
FileName | Вектор символов, указывающий имя файла или папки целиком или частично |
folder = getAttachedFilesFolder возвращает путь к локальной папке, в которую AttachedFiles написаны на работнике. Эта функция возвращает пустой массив, если он не вызывается для работника MATLAB ®.
folder = getAttachedFilesFolder(FileName) возвращает имя пути к указанной вложенной папке на работнике или папке, содержащей указанный вложенный файл. FileName может совпадать либо с полным именем присоединенного файла или папки, либо с конечной частью имени. Результаты нескольких совпадений возвращают массив ячеек.
Если папка присоединена, это не совпадает с именами файлов в этой папке.
Предположим, что папка присоединена 'C:\monday\tuesday\wednesday\thursday', которая на рабочих хранится в /tmp/MJS/tp12345. В следующей таблице представлены результаты различных попыток сопоставления.
| Указанный соответствующий аргумент вектора символа | Результат |
|---|---|
getAttachedFilesFolder('C:\monday') | Пустой результат, потому что 'C:\monday' является только началом пути и не включает 'thursday' |
getAttachedFilesFolder('wednesday') | Пустой результат, потому что 'wednesday' находится в середине пути и не включает 'thursday' |
getAttachedFilesFolder('thurs') | Пустой результат, потому что 'thurs' не является окончанием имени папки. |
getAttachedFilesFolder('thursday') | '/tmp/MJS/tp12345' |
getAttachedFilesFolder('wednesday\thursday') | '/tmp/MJS/tp12345' |
Присоедините папку к параллельному пулу, а затем найдите ее расположение на рабочем диске для выполнения одного из его файлов.
myPool = parpool; addAttachedFiles(myPool,'mydir'); spmd folder = getAttachedFilesFolder('mydir'); oldFolder = cd(folder); % Change to that folder [OK,output] = system('myExecutable'); cd(oldFolder); % Change to original folder end
Присоедините исполняемый файл к параллельному пулу, а затем измените папку для доступа и обработки некоторых данных.
myPool = parpool; addAttachedFiles(myPool,'myExecutable'); spmd system('myExecutable'); % Now on MATLAB path folder = getAttachedFilesFolder('myExecutable'); oldFolder = cd(folder); fid = open('myData.txt'); % Access data file % Process fid close(fid) cd(oldFolder); % Change back to the original folder end