Skip to content

Commit 1aba76b

Browse files
committed
remove pressure member from TwoWayPressureValve as its derivable elsehow
1 parent 2b64faf commit 1aba76b

File tree

1 file changed

+10
-22
lines changed

1 file changed

+10
-22
lines changed

src/main.rs

Lines changed: 10 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ use std::error::Error;
99

1010
struct TwoWayPressureValve {
1111
spawned: usize,
12-
pressure: i64,
1312
recv_ch: Receiver<Vec<u32>>,
1413
dims: WindowDimensions,
1514
}
@@ -20,20 +19,16 @@ impl Iterator for TwoWayPressureValve {
2019
/// dynamically allocates or frees vecs in the pipe depending on pressure
2120
fn next(&mut self) -> Option<Vec<u32>> {
2221
match self.recv_ch.try_recv() {
23-
Ok(buf) => {
24-
self.pressure = -i64::try_from(self.recv_ch.len()).unwrap();
25-
26-
Some(if self.pressure < -2 {
27-
drop(buf);
28-
self.spawned -= 1;
29-
let Ok(buf) = self.recv_ch.recv() else {
30-
return None;
31-
};
32-
buf
33-
} else {
34-
buf
35-
})
36-
}
22+
Ok(buf) => Some(if self.recv_ch.len() > 2 {
23+
drop(buf);
24+
self.spawned -= 1;
25+
let Ok(buf) = self.recv_ch.recv() else {
26+
return None;
27+
};
28+
buf
29+
} else {
30+
buf
31+
}),
3732
Err(TryRecvError::Disconnected) => None,
3833
Err(TryRecvError::Empty) => Some(if self.spawned < 100 {
3934
self.spawned += 1;
@@ -52,18 +47,11 @@ fn mandelbrot_generator(conf: Config) -> (Sender<Vec<u32>>, Receiver<Vec<u32>>)
5247
let (return_send_ch, recv_ch) = channel();
5348
let (send_ch, return_recv_ch) = channel();
5449

55-
//for _ in 0..5 {
56-
// return_send_ch
57-
// .send(vec![0; conf.dims.flat_length()])
58-
// .unwrap();
59-
//}
60-
6150
std::thread::spawn(move || {
6251
let mut scale = conf.starting_scale;
6352

6453
let iter = TwoWayPressureValve {
6554
spawned: 0,
66-
pressure: 0,
6755
recv_ch,
6856
dims: conf.dims,
6957
};

0 commit comments

Comments
 (0)