[−][src]Struct cannyls::device::DeviceRequest
Methods
impl<'a> DeviceRequest<'a>[src]
pub fn put(
&self,
lump_id: LumpId,
lump_data: LumpData
) -> impl Future<Item = bool, Error = Error>[src]
&self,
lump_id: LumpId,
lump_data: LumpData
) -> impl Future<Item = bool, Error = Error>
Lumpを格納する.
新規追加の場合にはtrueが、上書きの場合はfalseが、結果として返される.
性能上の注意
引数に渡されるLumpDataが、LumpData::new関数経由で生成されている場合には、
デバイスが管理しているストレージへの書き込み時に、
データをストレージのブロック境界にアライメントするためのメモリコピーが余分に発生してしまう.
それを避けたい場合には、DeviceHandle::allocate_lump_dataメソッドを使用してLumpDataを生成すると良い.
pub fn get(
&self,
lump_id: LumpId
) -> impl Future<Item = Option<LumpData>, Error = Error>[src]
&self,
lump_id: LumpId
) -> impl Future<Item = Option<LumpData>, Error = Error>
Lumpを取得する.
pub fn head(
&self,
lump_id: LumpId
) -> impl Future<Item = Option<LumpHeader>, Error = Error>[src]
&self,
lump_id: LumpId
) -> impl Future<Item = Option<LumpHeader>, Error = Error>
Lumpのヘッダを取得する.
pub fn delete(&self, lump_id: LumpId) -> impl Future<Item = bool, Error = Error>[src]
Lumpを削除する.
指定されたlumpが存在した場合にはtrueが、しなかった場合にはfalseが、結果として返される.
pub fn delete_range(
&self,
range: Range<LumpId>
) -> impl Future<Item = Vec<LumpId>, Error = Error>[src]
&self,
range: Range<LumpId>
) -> impl Future<Item = Vec<LumpId>, Error = Error>
Lumpを範囲オブジェクトを用いて削除する.
返り値のvectorは、引数rangeに含まれるlump idのうち、 対応するlump dataが存在して実際に削除されたもの全体を表す。
pub fn list(&self) -> impl Future<Item = Vec<LumpId>, Error = Error>[src]
pub fn list_range(
&self,
range: Range<LumpId>
) -> impl Future<Item = Vec<LumpId>, Error = Error>[src]
&self,
range: Range<LumpId>
) -> impl Future<Item = Vec<LumpId>, Error = Error>
範囲を指定してlump一覧を取得する.
pub fn usage_range(
&self,
range: Range<LumpId>
) -> impl Future<Item = StorageUsage, Error = Error>[src]
&self,
range: Range<LumpId>
) -> impl Future<Item = StorageUsage, Error = Error>
範囲を指定してlump数を取得する.
pub fn deadline(&mut self, deadline: Deadline) -> &mut Self[src]
要求のデッドラインを設定する.
デフォルト値はDeadline::Infinity.
pub fn journal_sync(&mut self) -> &mut Self[src]
ジャーナルバッファをディスクへ書き出す。
ジャーナルバッファはjournal_sync_intervalに基づき 自動でディスク上に書き出されるが、 このメソッドを呼ぶことで自動書き出しを待たずに その場での書き出しを強制することができる。
pub fn max_queue_len(&mut self, max: usize) -> &mut Self[src]
デバイスのキューの最大長を指定する.
もし要求発行時に、デバイスのキューの長さがこの値を超えている場合には、
ErrorKind::DeviceBusyエラーが返される.
デフォルトは無制限.
pub fn wait_for_running(&mut self) -> &mut Self[src]
デバイスが起動処理中の場合には、その完了を待つように指示する.
デフォルトでは、起動処理中にリクエストが発行された場合には、
即座にErrorKind::DeviceBusyエラーが返される.
wait_for_running()が呼び出された場合には、
リクエストはキューに追加され、デバイス起動後に順次処理される.
Trait Implementations
Auto Trait Implementations
impl<'a> !RefUnwindSafe for DeviceRequest<'a>
impl<'a> !Send for DeviceRequest<'a>
impl<'a> !Sync for DeviceRequest<'a>
impl<'a> Unpin for DeviceRequest<'a>
impl<'a> !UnwindSafe for DeviceRequest<'a>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> SendSyncUnwindSafe for T where
T: Send + Sync + UnwindSafe + ?Sized, [src]
T: Send + Sync + UnwindSafe + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,