-
Notifications
You must be signed in to change notification settings - Fork 12.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
libuv/timer - 'Assertion loop_refs == 1i32 failed' when uv_loop exits #4191
Comments
CC'ing @olsonjeffery because he seems to be the author of most of the libuv code. |
This is still relevant, reproduced by this code.
|
assigning bug; change assignment if you disagree |
Complete updated test: extern mod extra;
fn test_foo() {
let iotask1 = extra::uv_iotask::spawn_iotask(std::task::task());
let iotask2 = iotask1.clone();
let (port, chan) = std::comm::stream();
do std::task::spawn() {
loop {
chan.send(());
extra::timer::sleep(&iotask2, 0);
}
}
port.recv();
extra::uv_iotask::exit(&iotask1);
}
fn main() {
test_foo();
} This fails with:
|
I am not currently maintaining the networking code in libextra. This won't be fixed in 0.7. |
Triage 2013-08-05: Seems like this is no longer relevant since Could someone how knows what they are talking about (@bblum, @brson, @toddaaro) close this? |
@huonw yea, that sounds right. I'll mark this closed as old network code has been replaced by newrt functionality. If this is some weird case where the bug persists someone can re-open. |
I'm spawning a weak thread that periodically sends messages to a specific channel. While that works, every time I exit the program - e.g. at test suite shut down - there is an assertion:
It's quite easy to reproduce with a test like this:
The test reproduces it without the need to exit the program. Just append another long sleep call at the end of it. The same thing happens when using delayed_send().
The text was updated successfully, but these errors were encountered: