Use io methods in example

This commit is contained in:
Aode (lion) 2022-02-14 17:58:42 -06:00
parent 54261df041
commit c2098ded41

View file

@ -9,8 +9,8 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
let stream = 'l: loop {
for (key, readiness) in poller.poll(None)? {
if key == builder_key && readiness.is_write() {
poller.deregister(builder_key);
if builder_key.is_key(key) && readiness.is_write() {
poller.deregister(&builder);
let bldr = match Arc::try_unwrap(builder) {
Ok(bldr) => bldr,
@ -49,7 +49,7 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
'l2: loop {
for (key, readiness) in poller.poll(None)? {
if key == stream_key {
if stream_key.is_key(key) {
if readiness.is_read() {
loop {
let mut buf = [0; 1024];
@ -76,9 +76,8 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
}
if !bytes.is_empty() {
poller.update_interests(&stream_key, |interests| {
Readiness::write() | interests
});
poller
.update_interests(&stream, |interests| Readiness::write() | interests);
}
}
if readiness.is_hangup() {
@ -88,7 +87,7 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
match rustix::io::write(&*stream, &bytes) {
Ok(n) if n == bytes.len() => {
bytes = Vec::new();
poller.update_interests(&stream_key, |_| {
poller.update_interests(&stream, |_| {
Readiness::read() | Readiness::hangup()
});
}
@ -109,7 +108,7 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
println!("Woken");
}
poller.deregister(stream_key);
poller.deregister(&stream);
drop(poller);
println!("Disconnected");