---
title: FSVolume.ReadWriteOperations
framework: fskit
role: symbol
role_heading: Protocol
path: fskit/fsvolume/readwriteoperations
---

# FSVolume.ReadWriteOperations

Methods implemented for read and write operations that deliver data to and from the extension.

## Declaration

```swift
protocol ReadWriteOperations : NSObjectProtocol
```

## Overview

Overview Most volumes conform to either this protocol or FSVolumeKernelOffloadedIOOperations. You can conform to both if you need to provide kernel-offloaded I/O only for certain files. In that case, files with the inhibitKernelOffloadedIO attribute set use this protocol, and those without it use FSVolumeKernelOffloadedIOOperations. A volume that doesn’t conform to either protocol can’t support any I/O operation. note: Use FSVolume.ReadWriteHandler instead.

## Topics

### Reading and writing

- [FSMutableFileDataBuffer](fskit/fsmutablefiledatabuffer.md)

### Instance Methods

- [read(from:at:length:into:replyHandler:)](fskit/fsvolume/readwriteoperations/read(from:at:length:into:replyhandler:).md)
- [write(contents:to:at:replyHandler:)](fskit/fsvolume/readwriteoperations/write(contents:to:at:replyhandler:).md)

## Relationships

### Inherits From

- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Deprecated

- [FSVolume.Operations](fskit/fsvolume/operations.md)
- [FSVolume.OpenCloseOperations](fskit/fsvolume/opencloseoperations.md)
- [FSVolume.AccessCheckOperations](fskit/fsvolume/accesscheckoperations.md)
- [FSVolume.RenameOperations](fskit/fsvolume/renameoperations.md)
- [FSVolume.PreallocateOperations](fskit/fsvolume/preallocateoperations.md)
- [FSVolume.XattrOperations](fskit/fsvolume/xattroperations.md)
- [FSVolume.ItemDeactivation](fskit/fsvolume/itemdeactivation.md)
- [FSVolumeKernelOffloadedIOOperations](fskit/fsvolumekerneloffloadediooperations.md)
