Skip to content

Figure out and implement task lifetime rules. #515

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

Closed
eholk opened this issue Jun 17, 2011 · 3 comments
Closed

Figure out and implement task lifetime rules. #515

eholk opened this issue Jun 17, 2011 · 3 comments

Comments

@eholk
Copy link
Contributor

eholk commented Jun 17, 2011

Originally tasks were going to be lexically scoped, so they die as soon as the task variable goes out of scope on the parent task. This is counter-intuitive to a lot of people, so we might have a list of child tasks and refer to them by handles instead. This also would let us reparent tasks when the parent dies before its children.

@ghost ghost assigned eholk Jun 17, 2011
@pcwalton
Copy link
Contributor

Is this completed now with tasks-as-ids?

@eholk
Copy link
Contributor Author

eholk commented Aug 22, 2011

There's a life cycle that's implemented, but I think the issue is more making sure it's a sane design. I'm not really sure what the status of the task tree is, or even if we still want it. We also don't have any sort of reparenting, and it's not possible to kill tasks.

@brson
Copy link
Contributor

brson commented Sep 14, 2011

Let's make sure that failure propagation to parents works correctly, then maybe we can call this resolved.

@brson brson closed this as completed Sep 15, 2011
@eholk eholk removed their assignment Jun 16, 2014
keeperofdakeys pushed a commit to keeperofdakeys/rust that referenced this issue Dec 12, 2017
* pthread_t is defined as uint_t, so must be c_uint, not uintptr_t, just
  as pthread_key_t is already defined
* fd_set is defined as long, so must be i32/i64 based on
  target_pointer_width; this also fixes an indirect endianness issue
  encountered on sparc
* FD_SETSIZE should be defined as 65536 when target_pointer_width = 64

Fixes rust-lang#515
keeperofdakeys pushed a commit to keeperofdakeys/rust that referenced this issue Dec 12, 2017
Correct solaris libc definitions:

* pthread_t is defined as uint_t, so must be c_uint, not uintptr_t, just
  as pthread_key_t is already defined
* fd_set is defined as long, so must be i32/i64 based on
  target_pointer_width; this also fixes an indirect endianness issue
  encountered on sparc
* FD_SETSIZE should be defined as 65536 when target_pointer_width = 64

Fixes rust-lang#515
pdietl pushed a commit to pdietl/rust that referenced this issue Apr 23, 2020
ZuseZ4 pushed a commit to EnzymeAD/rust that referenced this issue Mar 7, 2023
celinval pushed a commit to celinval/rust-dev that referenced this issue Jun 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants