Skip to content
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

Scheduler + I/O #7265

Closed
wants to merge 128 commits into from
Closed

Scheduler + I/O #7265

wants to merge 128 commits into from

Conversation

brson
Copy link
Contributor

@brson brson commented Jun 20, 2013

r? @graydon, @nikomatsakis, @pcwalton, or @catamorphism

Sorry this is so huge, but it's been accumulating for about a month. There's lots of stuff here, mostly oriented toward enabling multithreaded scheduling and improving compatibility between the old and new runtimes. Adds task pinning so that we can create the 'platform thread' in servo.

Here is the current runtime setup code.

About half of this has already been reviewed.

brson and others added 30 commits May 20, 2013 16:43
This is used for signalling the event loop from other threads.
This will be for implementing a work-sharing strategy
Just a simple place to stuff handles to sleeping schedulers.
Conflicts:
	src/libstd/rt/comm.rs
toddaaro and others added 7 commits July 2, 2013 11:44
…owing spurious assert failures. Why this did not result in the test case failing previously is beyond me.
Conflicts:
	src/libstd/rt/sched.rs
Conflicts:
	src/libstd/rt/test.rs
	src/rt/rustrt.def.in
Conflicts:
	src/libextra/test.rs
	src/libstd/at_vec.rs
	src/libstd/cleanup.rs
	src/libstd/rt/comm.rs
	src/libstd/rt/global_heap.rs
	src/libstd/task/spawn.rs
	src/libstd/unstable/lang.rs
	src/libstd/vec.rs
	src/rt/rustrt.def.in
	src/test/run-pass/extern-pub.rs
@bblum
Copy link
Contributor

bblum commented Jul 4, 2013

uv/uvio.rs has the following redundant cell:

313         let incoming_streams_cell = Cell::new(self.incoming_streams.clone());
314 
315         let incoming_streams_cell = Cell::new(incoming_streams_cell.take());

bors added a commit that referenced this pull request Jul 10, 2013
r? @graydon, @nikomatsakis, @pcwalton, or @catamorphism

Sorry this is so huge, but it's been accumulating for about a month. There's lots of stuff here, mostly oriented toward enabling multithreaded scheduling and improving compatibility between the old and new runtimes. Adds task pinning so that we can create the 'platform thread' in servo.

[Here](https://github.com/brson/rust/blob/e1555f9b5628af2b6c6ed344cad621399cb7684d/src/libstd/rt/mod.rs#L201) is the current runtime setup code.

About half of this has already been reviewed.
@bors bors closed this Jul 10, 2013
@graydon
Copy link
Contributor

graydon commented Jul 10, 2013

Woo!

@graydon
Copy link
Contributor

graydon commented Jul 10, 2013

🍰

@bblum
Copy link
Contributor

bblum commented Jul 10, 2013

The SharedPort::try_recv implementation wants some heavy commenting. I like it, but I had to puzzle over it for a while to figure out all the cases.

flip1995 pushed a commit to flip1995/rust that referenced this pull request Jun 3, 2021
Add lint `manual_str_repeat`

fixes: rust-lang#7260

There's a similar function for slices. Should this be renamed to include it, or should that be a separate lint? If we are going to have them as one lint a better name will be needed. `manual_repeat` isn't exactly clear as it's replacing a call to `iter::repeat`.

changelog: Add new lint `manual_str_repeat`
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

Successfully merging this pull request may close these issues.

None yet

10 participants