Поддержка нескольких устройств чтения и записи для FileSystemSyncAccessHandle и эксклюзивная запись для FileSystemWritableFileStream.
Несколько устройств чтения и записи для FileSystemSyncAccessHandle
Исходная частная файловая система (иногда также называемая файловой системой сегмента) позволяет разработчикам получать доступ к файлам, оптимизированным для максимальной производительности чтения и записи. Это происходит через объекты FileSystemSyncAccessHandle
. В настоящее время попытка открыть несколько объектов FileSystemSyncAccessHandle
для одной и той же записи файла завершается с ошибкой NoModificationAllowedError
. Поскольку существуют случаи использования, когда это ограничение является ограничивающим, в Chrome 121 представлен новый параметр mode
для метода FileSystemFileHandle.createSyncAccessHandle()
со следующими допустимыми строковыми значениями:
-
"readwrite"
: это текущее значение по умолчанию. После открытия разрешены любые методыFileSystemSyncAccessHandle
. Разрешен только один экземплярFileSystemSyncAccessHandle
. -
"read-only"
: разрешает несколько читателей. После открытия вFileSystemSyncAccessHandle
разрешены только методы чтения:read()
,getSize()
иclose()
. Можно создать несколько экземпляровFileSystemSyncAccessHandle
, если все они находятся в режиме только для чтения. -
"readwrite-unsafe"
: разрешает несколько авторов. После открытия разрешены любые методыFileSystemSyncAccessHandle
. Можно создать несколько экземпляровFileSystemSyncAccessHandle
, если все они находятся в небезопасном для чтения и записи режиме.
Текущее поведение сохраняется за счет сохранения опции "readwrite"
по умолчанию, что позволяет одновременно использовать только один экземпляр. Если сайту необходимо открыть несколько объектов FileSystemSyncAccessHandle
, но не требуется выполнять запись, следует использовать параметр "read-only"
. Наконец, последний вариант "readwrite-unsafe"
разрешает несколько экземпляров, а также чтение и запись. В этом случае записи могут быть непростыми, если они выполняются с нескольких вкладок, и сайтам потребуется предоставить собственную схему блокировки.
const handle1 = await handle.createSyncAccessHandle({mode: 'readwrite-unsafe'});
// This will succeed:
const handle2 = await handle.createSyncAccessHandle({mode: 'readwrite-unsafe'});
Эксклюзивный писатель для FileSystemWritableFileStream
В отличие от FileSystemSyncAccessHandle
, сегодня для каждой записи файла можно создать несколько экземпляров FileSystemWritableFileStream
. Чего не хватает, так это способа предоставить возможность эксклюзивному автору. Chrome 121 добавляет необязательный параметр mode
в метод FileSystemAccessFileHandle.createWritable()
, который имеет следующие значения:
-
"exclusive"
режим: одновременно может существовать только один писатель. -
"siloed"
режим: это текущий режим по умолчанию. Каждый созданный модуль записи будет иметь свой собственный файл подкачки.
const writable1 = await handle.createWritable({mode: 'exclusive'});
// This will fail:
const writable2 = await handle.createWritable();
Поддержка браузера
Обе функции — несколько устройств чтения и записи для FileSystemSyncAccessHandle
и эксклюзивная запись для FileSystemWritableFileStream
— поддерживаются начиная с Chrome 121.
Войдите в пробную версию для разработчиков
Чтобы принять участие в пробной версии для разработчиков и протестировать эту функцию до запуска Chrome 121, установите для флага #file-system-access-locking-scheme
в chrome://flags
значение Enabled . Это позволит вам протестировать эту функцию локально на вашем компьютере.
Благодарности
Эту статью рецензировали Дасыль Ли , Натан Меммотт и Рэйчел Эндрю .
,Поддержка нескольких устройств чтения и записи для FileSystemSyncAccessHandle и эксклюзивная запись для FileSystemWritableFileStream.
Несколько устройств чтения и записи для FileSystemSyncAccessHandle
Исходная частная файловая система (иногда также называемая файловой системой сегмента) позволяет разработчикам получать доступ к файлам, оптимизированным для максимальной производительности чтения и записи. Это происходит через объекты FileSystemSyncAccessHandle
. В настоящее время попытка открыть несколько объектов FileSystemSyncAccessHandle
для одной и той же записи файла завершается с ошибкой NoModificationAllowedError
. Поскольку существуют случаи использования, когда это ограничение является ограничивающим, в Chrome 121 представлен новый параметр mode
для метода FileSystemFileHandle.createSyncAccessHandle()
со следующими допустимыми строковыми значениями:
-
"readwrite"
: это текущее значение по умолчанию. После открытия разрешены любые методыFileSystemSyncAccessHandle
. Разрешен только один экземплярFileSystemSyncAccessHandle
. -
"read-only"
: разрешает несколько читателей. После открытия вFileSystemSyncAccessHandle
разрешены только методы чтения:read()
,getSize()
иclose()
. Можно создать несколько экземпляровFileSystemSyncAccessHandle
, если все они находятся в режиме только для чтения. -
"readwrite-unsafe"
: разрешает несколько авторов. После открытия разрешены любые методыFileSystemSyncAccessHandle
. Можно создать несколько экземпляровFileSystemSyncAccessHandle
, если все они находятся в небезопасном для чтения и записи режиме.
Текущее поведение сохраняется за счет сохранения опции "readwrite"
по умолчанию, что позволяет одновременно использовать только один экземпляр. Если сайту необходимо открыть несколько объектов FileSystemSyncAccessHandle
, но не требуется выполнять запись, следует использовать параметр "read-only"
. Наконец, последний вариант "readwrite-unsafe"
разрешает несколько экземпляров, а также чтение и запись. В этом случае записи могут быть непростыми, если они выполняются с нескольких вкладок, и сайтам потребуется предоставить собственную схему блокировки.
const handle1 = await handle.createSyncAccessHandle({mode: 'readwrite-unsafe'});
// This will succeed:
const handle2 = await handle.createSyncAccessHandle({mode: 'readwrite-unsafe'});
Эксклюзивный писатель для FileSystemWritableFileStream
В отличие от FileSystemSyncAccessHandle
, сегодня для каждой записи файла можно создать несколько экземпляров FileSystemWritableFileStream
. Чего не хватает, так это способа предоставить возможность эксклюзивному автору. Chrome 121 добавляет необязательный параметр mode
в метод FileSystemAccessFileHandle.createWritable()
, который имеет следующие значения:
-
"exclusive"
режим: одновременно может существовать только один писатель. -
"siloed"
режим: это текущий режим по умолчанию. Каждый созданный модуль записи будет иметь свой собственный файл подкачки.
const writable1 = await handle.createWritable({mode: 'exclusive'});
// This will fail:
const writable2 = await handle.createWritable();
Поддержка браузера
Обе функции — несколько устройств чтения и записи для FileSystemSyncAccessHandle
и эксклюзивная запись для FileSystemWritableFileStream
— поддерживаются начиная с Chrome 121.
Войдите в пробную версию для разработчиков
Чтобы принять участие в пробной версии для разработчиков и протестировать эту функцию до запуска Chrome 121, установите для флага #file-system-access-locking-scheme
в chrome://flags
значение Enabled . Это позволит вам протестировать эту функцию локально на вашем компьютере.
Благодарности
Эту статью рецензировали Дасыль Ли , Натан Меммотт и Рэйчел Эндрю .
,Поддержка нескольких устройств чтения и записи для FileSystemSyncAccessHandle и эксклюзивная запись для FileSystemWritableFileStream.
Несколько устройств чтения и записи для FileSystemSyncAccessHandle
Исходная частная файловая система (иногда также называемая файловой системой сегмента) позволяет разработчикам получать доступ к файлам, оптимизированным для максимальной производительности чтения и записи. Это происходит через объекты FileSystemSyncAccessHandle
. В настоящее время попытка открыть несколько объектов FileSystemSyncAccessHandle
для одной и той же записи файла завершается с ошибкой NoModificationAllowedError
. Поскольку существуют случаи использования, когда это ограничение является ограничивающим, в Chrome 121 представлен новый параметр mode
для метода FileSystemFileHandle.createSyncAccessHandle()
со следующими допустимыми строковыми значениями:
-
"readwrite"
: это текущее значение по умолчанию. После открытия разрешены любые методыFileSystemSyncAccessHandle
. Разрешен только один экземплярFileSystemSyncAccessHandle
. -
"read-only"
: разрешает несколько читателей. После открытия вFileSystemSyncAccessHandle
разрешены только методы чтения:read()
,getSize()
иclose()
. Можно создать несколько экземпляровFileSystemSyncAccessHandle
, если все они находятся в режиме только для чтения. -
"readwrite-unsafe"
: разрешает несколько авторов. После открытия разрешены любые методыFileSystemSyncAccessHandle
. Можно создать несколько экземпляровFileSystemSyncAccessHandle
, если все они находятся в небезопасном для чтения и записи режиме.
Текущее поведение сохраняется за счет сохранения опции "readwrite"
по умолчанию, что позволяет одновременно использовать только один экземпляр. Если сайту необходимо открыть несколько объектов FileSystemSyncAccessHandle
, но не требуется выполнять запись, следует использовать параметр "read-only"
. Наконец, последний вариант "readwrite-unsafe"
разрешает несколько экземпляров, а также чтение и запись. В этом случае записи могут быть непростыми, если они выполняются с нескольких вкладок, и сайтам потребуется предоставить собственную схему блокировки.
const handle1 = await handle.createSyncAccessHandle({mode: 'readwrite-unsafe'});
// This will succeed:
const handle2 = await handle.createSyncAccessHandle({mode: 'readwrite-unsafe'});
Эксклюзивный писатель для FileSystemWritableFileStream
В отличие от FileSystemSyncAccessHandle
, сегодня для каждой записи файла можно создать несколько экземпляров FileSystemWritableFileStream
. Чего не хватает, так это способа предоставить возможность эксклюзивному автору. Chrome 121 добавляет необязательный параметр mode
в метод FileSystemAccessFileHandle.createWritable()
, который имеет следующие значения:
-
"exclusive"
режим: одновременно может существовать только один писатель. -
"siloed"
режим: это текущий режим по умолчанию. Каждый созданный модуль записи будет иметь свой собственный файл подкачки.
const writable1 = await handle.createWritable({mode: 'exclusive'});
// This will fail:
const writable2 = await handle.createWritable();
Поддержка браузера
Обе функции — несколько устройств чтения и записи для FileSystemSyncAccessHandle
и эксклюзивная запись для FileSystemWritableFileStream
— поддерживаются начиная с Chrome 121.
Войдите в пробную версию для разработчиков
Чтобы принять участие в пробной версии для разработчиков и протестировать эту функцию до запуска Chrome 121, установите для флага #file-system-access-locking-scheme
в chrome://flags
значение Enabled . Это позволит вам протестировать эту функцию локально на вашем компьютере.
Благодарности
Эту статью рецензировали Дасыль Ли , Натан Меммотт и Рэйчел Эндрю .
,Поддержка нескольких устройств чтения и записи для FileSystemSyncAccessHandle и эксклюзивная запись для FileSystemWritableFileStream.
Несколько устройств чтения и записи для FileSystemSyncAccessHandle
Исходная частная файловая система (иногда также называемая файловой системой сегмента) позволяет разработчикам получать доступ к файлам, оптимизированным для максимальной производительности чтения и записи. Это происходит через объекты FileSystemSyncAccessHandle
. В настоящее время попытка открыть несколько объектов FileSystemSyncAccessHandle
для одной и той же записи файла завершается с ошибкой NoModificationAllowedError
. Поскольку существуют случаи использования, когда это ограничение является ограничивающим, в Chrome 121 представлен новый параметр mode
для метода FileSystemFileHandle.createSyncAccessHandle()
со следующими допустимыми строковыми значениями:
-
"readwrite"
: это текущее значение по умолчанию. После открытия разрешены любые методыFileSystemSyncAccessHandle
. Разрешен только один экземплярFileSystemSyncAccessHandle
. -
"read-only"
: разрешает несколько читателей. После открытия вFileSystemSyncAccessHandle
разрешены только методы чтения:read()
,getSize()
иclose()
. Можно создать несколько экземпляровFileSystemSyncAccessHandle
, если все они находятся в режиме только для чтения. -
"readwrite-unsafe"
: разрешает несколько авторов. После открытия разрешены любые методыFileSystemSyncAccessHandle
. Можно создать несколько экземпляровFileSystemSyncAccessHandle
, если все они находятся в небезопасном для чтения и записи режиме.
Текущее поведение сохраняется за счет сохранения опции "readwrite"
по умолчанию, что позволяет одновременно использовать только один экземпляр. Если сайту необходимо открыть несколько объектов FileSystemSyncAccessHandle
, но не требуется выполнять запись, следует использовать параметр "read-only"
. Наконец, последний вариант "readwrite-unsafe"
разрешает несколько экземпляров, а также чтение и запись. В этом случае записи могут быть непростыми, если они выполняются с нескольких вкладок, и сайтам потребуется предоставить собственную схему блокировки.
const handle1 = await handle.createSyncAccessHandle({mode: 'readwrite-unsafe'});
// This will succeed:
const handle2 = await handle.createSyncAccessHandle({mode: 'readwrite-unsafe'});
Эксклюзивный писатель для FileSystemWritableFileStream
В отличие от FileSystemSyncAccessHandle
, сегодня для каждой записи файла можно создать несколько экземпляров FileSystemWritableFileStream
. Чего не хватает, так это способа предоставить возможность эксклюзивному автору. Chrome 121 добавляет необязательный параметр mode
в метод FileSystemAccessFileHandle.createWritable()
, который имеет следующие значения:
-
"exclusive"
режим: одновременно может существовать только один писатель. -
"siloed"
режим: это текущий режим по умолчанию. Каждый созданный модуль записи будет иметь свой собственный файл подкачки.
const writable1 = await handle.createWritable({mode: 'exclusive'});
// This will fail:
const writable2 = await handle.createWritable();
Поддержка браузера
Обе функции — несколько устройств чтения и записи для FileSystemSyncAccessHandle
и эксклюзивная запись для FileSystemWritableFileStream
— поддерживаются начиная с Chrome 121.
Войдите в пробную версию для разработчиков
Чтобы принять участие в пробной версии для разработчиков и протестировать эту функцию до запуска Chrome 121, установите для флага #file-system-access-locking-scheme
в chrome://flags
значение Enabled . Это позволит вам протестировать эту функцию локально на вашем компьютере.
Благодарности
Эту статью рецензировали Дасыль Ли , Натан Меммотт и Рэйчел Эндрю .