Skip to content

Commit de312d1

Browse files
committed
Reduce size of sys::Events
1 parent e0daa5b commit de312d1

File tree

4 files changed

+9
-11
lines changed

4 files changed

+9
-11
lines changed

src/epoll.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -279,7 +279,7 @@ fn write_flags() -> libc::c_int {
279279

280280
/// A list of reported I/O events.
281281
pub struct Events {
282-
list: Box<[libc::epoll_event]>,
282+
list: Box<[libc::epoll_event; 1024]>,
283283
len: usize,
284284
}
285285

@@ -289,7 +289,7 @@ impl Events {
289289
/// Creates an empty list.
290290
pub fn new() -> Events {
291291
let ev = libc::epoll_event { events: 0, u64: 0 };
292-
let list = vec![ev; 1000].into_boxed_slice();
292+
let list = Box::new([ev; 1024]);
293293
let len = 0;
294294
Events { list, len }
295295
}

src/kqueue.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@ impl Drop for Poller {
204204

205205
/// A list of reported I/O events.
206206
pub struct Events {
207-
list: Box<[libc::kevent]>,
207+
list: Box<[libc::kevent; 1024]>,
208208
len: usize,
209209
}
210210

@@ -221,7 +221,7 @@ impl Events {
221221
data: 0,
222222
udata: 0 as _,
223223
};
224-
let list = vec![ev; 1000].into_boxed_slice();
224+
let list = Box::new([ev; 1024]);
225225
let len = 0;
226226
Events { list, len }
227227
}

src/port.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ fn write_flags() -> libc::c_short {
179179

180180
/// A list of reported I/O events.
181181
pub struct Events {
182-
list: Box<[libc::port_event]>,
182+
list: Box<[libc::port_event; 1024]>,
183183
len: usize,
184184
}
185185

@@ -195,7 +195,7 @@ impl Events {
195195
portev_object: 0,
196196
portev_user: 0 as _,
197197
};
198-
let list = vec![ev; 1000].into_boxed_slice();
198+
let list = Box::new([ev; 1024]);
199199
let len = 0;
200200
Events { list, len }
201201
}

src/wepoll.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ const WRITE_FLAGS: u32 = we::EPOLLOUT | we::EPOLLHUP | we::EPOLLERR;
200200

201201
/// A list of reported I/O events.
202202
pub struct Events {
203-
list: Box<[we::epoll_event]>,
203+
list: Box<[we::epoll_event; 1024]>,
204204
len: usize,
205205
}
206206

@@ -213,10 +213,8 @@ impl Events {
213213
events: 0,
214214
data: we::epoll_data { u64_: 0 },
215215
};
216-
Events {
217-
list: vec![ev; 1000].into_boxed_slice(),
218-
len: 0,
219-
}
216+
let list = Box::new([ev; 1024]);
217+
Events { list, len: 0 }
220218
}
221219

222220
/// Iterates over I/O events.

0 commit comments

Comments
 (0)