Skip to content

libnative timer doesn't close when using linux #12699

Closed
@pethin

Description

@pethin

Rust version:

rustc 0.10-pre (fbe26af 2014-03-02 17:36:28 -0800)
host: x86_64-unknown-linux-gnu

When running the program:

extern crate native;

use std::io::timer;

#[start]
fn start(argc: int, argv: **u8) -> int {
    native::start(argc, argv, main)
}

fn main() {
    for i in range(1u, 11) {
        timer::sleep(250);
        println!("{}", i);
    }
}

The program never exits unless timer::sleep(250); is removed.
Running a backtrace returns:

#0  0x00007ffff73207ac in __lll_lock_wait () from /usr/lib/libpthread.so.0
#1  0x00007ffff731e12c in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#2  0x0000000000520314 in bookkeeping::wait_for_other_tasks::h2c798b302d45d35c2aa::v0.10.pre ()
#3  0x0000000000540f36 in io::timer_helper::boot::closure ()
#4  0x00000000004aa1ff in rt::cleanup::hcd581fdc1c797e7b5Ag::v0.10.pre ()
#5  0x0000000000546f68 in start::h835618e68f53f25aBBd::v0.10.pre ()
#6  0x00000000004058fc in start::hf51dabea8a76ee0ahaa::v0.0 ()
#7  0x000000000040593b in main ()

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions