Struct actix_web::actix::IntervalFunc
source · pub struct IntervalFunc<A>where
A: Actor,{ /* private fields */ }
Expand description
An ActorStream
that periodically runs a function in the actor’s context.
Unless you specifically need access to the future, use Context::run_interval
instead.
use std::time::Duration;
use actix::prelude::*;
use actix::utils::IntervalFunc;
struct MyActor;
impl MyActor {
fn tick(&mut self, context: &mut Context<Self>) {
println!("tick");
}
}
impl Actor for MyActor {
type Context = Context<Self>;
fn started(&mut self, context: &mut Context<Self>) {
// spawn an interval stream into our context
IntervalFunc::new(Duration::from_millis(100), Self::tick)
.finish()
.spawn(context);
}
}
Implementations
Trait Implementations
sourceimpl<A> ActorStream for IntervalFunc<A>where
A: Actor,
impl<A> ActorStream for IntervalFunc<A>where
A: Actor,
type Actor = A
type Actor = A
The actor within which this stream runs.
fn poll(
&mut self,
act: &mut <IntervalFunc<A> as ActorStream>::Actor,
ctx: &mut <<IntervalFunc<A> as ActorStream>::Actor as Actor>::Context
) -> Result<Async<Option<<IntervalFunc<A> as ActorStream>::Item>>, <IntervalFunc<A> as ActorStream>::Error>
sourcefn map<U, F>(self, f: F) -> StreamMap<Self, F>where
F: FnMut(Self::Item, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> U,
Self: Sized,
fn map<U, F>(self, f: F) -> StreamMap<Self, F>where
F: FnMut(Self::Item, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> U,
Self: Sized,
Converts a stream of type
T
to a stream of type U
.sourcefn map_err<E, F>(self, f: F) -> StreamMapErr<Self, F>where
F: FnMut(Self::Error, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> E,
Self: Sized,
fn map_err<E, F>(self, f: F) -> StreamMapErr<Self, F>where
F: FnMut(Self::Error, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> E,
Self: Sized,
Converts a stream of error type
T
to a stream of error type E
.sourcefn then<F, U>(self, f: F) -> StreamThen<Self, F, U>where
F: FnMut(Result<Self::Item, Self::Error>, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> U,
U: IntoActorFuture<Actor = Self::Actor>,
Self: Sized,
fn then<F, U>(self, f: F) -> StreamThen<Self, F, U>where
F: FnMut(Result<Self::Item, Self::Error>, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> U,
U: IntoActorFuture<Actor = Self::Actor>,
Self: Sized,
Chain on a computation for when a value is ready, passing the resulting
item to the provided closure
f
. Read moresourcefn and_then<F, U>(self, f: F) -> StreamAndThen<Self, F, U>where
F: FnMut(Self::Item, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> U,
U: IntoActorFuture<Error = Self::Error, Actor = Self::Actor>,
Self: Sized,
fn and_then<F, U>(self, f: F) -> StreamAndThen<Self, F, U>where
F: FnMut(Self::Item, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> U,
U: IntoActorFuture<Error = Self::Error, Actor = Self::Actor>,
Self: Sized,
Chain on a computation for when a value is ready, passing the successful
results to the provided closure
f
. Read moresourcefn fold<F, T, Fut>(self, init: T, f: F) -> StreamFold<Self, F, Fut, T>where
F: FnMut(T, Self::Item, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> Fut,
Fut: IntoActorFuture<Actor = Self::Actor, Item = T>,
Self::Error: From<<Fut as IntoActorFuture>::Error>,
Self: Sized,
fn fold<F, T, Fut>(self, init: T, f: F) -> StreamFold<Self, F, Fut, T>where
F: FnMut(T, Self::Item, &mut Self::Actor, &mut <Self::Actor as Actor>::Context) -> Fut,
Fut: IntoActorFuture<Actor = Self::Actor, Item = T>,
Self::Error: From<<Fut as IntoActorFuture>::Error>,
Self: Sized,
Execute an accumulating computation over a stream, collecting all the
values into one final result. Read more
sourcefn finish(self) -> StreamFinish<Self>where
Self: Sized,
fn finish(self) -> StreamFinish<Self>where
Self: Sized,
Converts a stream to a future that resolves when stream finishes.
Auto Trait Implementations
impl<A> !RefUnwindSafe for IntervalFunc<A>
impl<A> !Send for IntervalFunc<A>
impl<A> !Sync for IntervalFunc<A>
impl<A> Unpin for IntervalFunc<A>
impl<A> !UnwindSafe for IntervalFunc<A>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more