Brian Anderson
357f087786
Merge remote-tracking branch 'brson/io' into io-upstream
...
Conflicts:
src/rt/rust_builtin.cpp
src/rt/rustrt.def.in
2013-06-20 12:17:00 -07:00
Brian Anderson
4d39253a96
std::rt: Whitespace
2013-06-20 12:16:04 -07:00
Brian Anderson
bbf5469b75
Merge remote-tracking branch 'brson/io-wip' into io
2013-06-20 11:26:29 -07:00
Eric Reed
55dda46cf6
Merge remote-tracking branch 'upstream/io' into io
2013-06-20 10:51:04 -07:00
Eric Reed
36c0e04e57
derived instances of Eq and TotalEq for IpAddr rather than implement them manually.
2013-06-19 17:39:02 -07:00
Eric Reed
ac49b74e82
socket based UDP io
2013-06-19 17:23:55 -07:00
Brian Anderson
5086c0850e
std::rt: Update GC metadata in init
2013-06-19 16:08:07 -07:00
Eric Reed
083c692565
Changed visibility from being on the impl to being on methods per language syntax change.
2013-06-19 15:39:18 -07:00
toddaaro
753b497b4e
Modified a match in resume_task_from_queue that was returning an int that was then matched on to instead use an enum.
2013-06-19 15:23:14 -07:00
Eric Reed
d777ba01cb
Wrote the Eq instance of IpAddr in a slightly different way.
2013-06-19 15:20:28 -07:00
Brian Anderson
e1555f9b56
std::rt: Document and cleanup the run function
2013-06-19 01:13:56 -07:00
Brian Anderson
5722c953e5
std::rt: Correct the numbers of default cores
2013-06-19 00:49:05 -07:00
Brian Anderson
915aaa7f67
std::rt: Set the process exit code
2013-06-19 00:39:10 -07:00
Brian Anderson
1120f8c1e5
std::rt: Work around a dynamic borrowck bug
2013-06-18 23:20:53 -07:00
Brian Anderson
29ad8e15a2
std::rt: Improve the rtabort! macro
2013-06-18 16:27:48 -07:00
Graydon Hoare
d904c72af8
replace #[inline(always)] with #[inline]. r=burningtree.
2013-06-18 14:48:48 -07:00
Brian Anderson
5b2dc52034
std::rt: Turn on multithreaded scheduling
2013-06-18 00:17:14 -07:00
Brian Anderson
b5fbec9c1e
std: Rename abort!
to rtabort!
to match other macros
2013-06-17 23:24:50 -07:00
Brian Anderson
021e81fbd3
std::rt: move abort function to util module
2013-06-17 23:22:41 -07:00
Brian Anderson
9ef4c413a8
std::rt: Check exchange count on exit
2013-06-17 23:18:20 -07:00
Brian Anderson
3281f5b637
std::rt: Add util mod and num_cpus function
2013-06-17 22:17:51 -07:00
Eric Reed
35f3fa6383
Merge remote-tracking branch 'upstream/io' into io
...
Conflicts:
src/libstd/rt/uvio.rs
2013-06-17 12:45:40 -07:00
Eric Reed
33ae193a3c
Started to implemented UdpStream
2013-06-17 12:35:41 -07:00
Eric Reed
e42f28c05c
stated to implement UdpStream
2013-06-17 12:34:58 -07:00
Eric Reed
47443753f1
added Eq and TotalEq instances for IpAddr
2013-06-17 12:33:46 -07:00
Eric Reed
7e022c590f
added a function to convert C's ipv4 data structure into the Rust ipv4 data structure.
2013-06-17 12:33:10 -07:00
Eric Reed
b51d1885be
Added a RtioUdpStream trait
2013-06-17 12:32:21 -07:00
Eric Reed
9687437d45
added wrappers about uv_ip{4,6}_{port,name}
2013-06-17 12:31:30 -07:00
Brian Anderson
93156ab7e1
std::rt: Reduce the delay on a timer test. Slow
2013-06-16 19:24:51 -07:00
Brian Anderson
319cf6e465
Merge remote-tracking branch 'brson/io'
...
Conflicts:
src/libstd/rt/comm.rs
src/libstd/rt/mod.rs
src/libstd/rt/sched.rs
src/libstd/rt/task.rs
src/libstd/rt/test.rs
src/libstd/rt/tube.rs
src/libstd/rt/uv/uvio.rs
src/libstd/rt/uvio.rs
src/libstd/task/spawn.rs
2013-06-16 15:09:25 -07:00
Brian Anderson
3208fc36bf
Merge remote-tracking branch 'brson/io-wip' into io
...
Conflicts:
src/libstd/rt/sched.rs
src/libstd/rt/task.rs
src/libstd/rt/test.rs
src/libstd/task/mod.rs
src/libstd/task/spawn.rs
2013-06-15 19:31:46 -07:00
Daniel Micay
6c547e42c8
rm vec::uniq_len
2013-06-15 22:16:21 -04:00
Brian Anderson
505ef7e710
std::rt: Tasks contain a JoinLatch
2013-06-15 19:00:44 -07:00
Brian Anderson
b08c446798
Merge remote-tracking branch 'toddaaro/io' into io
2013-06-15 17:00:36 -07:00
toddaaro
d1ec8b5fb8
redesigned the pinning to pin deal with things on dequeue, not on enqueue
2013-06-14 12:17:56 -07:00
Eric Reed
a7f92c92ed
Added a UdpWatcher and UdpSendRequest with associated callbacks
2013-06-14 12:04:11 -07:00
Eric Reed
03fe59aefa
added bindings to extract udp handle from udp send requests
2013-06-14 11:54:56 -07:00
Brian Anderson
90fbe38f00
std::rt: Tasks must have an unwinder. Simpler
2013-06-13 23:18:49 -07:00
Brian Anderson
fd148cd3e2
std::rt: Change the Task constructors to reflect a tree
2013-06-13 23:18:49 -07:00
Brian Anderson
abc3a8aa1e
std::rt: Add JoinLatch
...
This is supposed to be an efficient way to link the lifetimes
of tasks into a tree. JoinLatches form a tree and when `release`
is called they wait on children then signal the parent.
This structure creates zombie tasks which currently keep the entire
task allocated. Zombie tasks are supposed to be tombstoned but that
code does not work correctly.
2013-06-13 23:18:45 -07:00
Daniel Micay
ec27644870
automated whitespace fixes
2013-06-13 18:03:08 -04:00
Eric Reed
5393e43b53
Corrected libuv UDP bindings.
2013-06-13 12:51:32 -07:00
Steven Stewart-Gallus
d9d50a5bd4
Remove unused imports
...
I was able to remove unused imports, and fix the following warnings
src/libstd/hashmap.rs:23:15: 23:23 warning: unused import [-W unused-imports (default)]
src/libstd/task/spawn.rs:95:15: 95:23 warning: unused import [-W unused-imports (default)]
src/libstd/rt/uv/mod.rs:42:0: 42:9 warning: unused import [-W unused-imports (default)]
src/libstd/rt/uv/mod.rs:45:0: 45:9 warning: unused import [-W unused-imports (default)]
src/librustc/middle/trans/meth.rs:26:0: 26:26 warning: unused import [-W unused-imports (default)]
src/librustc/back/link.rs:210:20: 210:25 warning: unused import [-W unused-imports (default)]
I was unable to fix the following unused import warnings. The code
here was weird.
src/libextra/std.rc:40:11: 40:14 warning: unused import [-W unused-imports (default)]
src/libextra/std.rc:40:16: 40:24 warning: unused import [-W unused-imports (default)]
2013-06-13 10:46:17 -07:00
Eric Reed
39a575fb43
Added libuv UDP function bindings.
2013-06-12 16:01:50 -07:00
toddaaro
4224fc7aad
added functionality to tell schedulers to refuse to run tasks that are not pinned to them
2013-06-12 14:55:32 -07:00
Eric Reed
eb11274919
Removing redundant libuv bindings
2013-06-12 14:15:44 -07:00
Brian Anderson
e7213aa21e
std::rt: Remove old files
2013-06-12 12:00:46 -07:00
toddaaro
8428081958
A basic implementation of pinning tasks to schedulers. No IO interactions have been planned for, and no forwarding of tasks off special schedulers is supported.
2013-06-12 11:32:22 -07:00
Huon Wilson
efc71a8bdb
std: unify the str -> [u8] functions as 3 methods: .as_bytes() and .as_bytes_with_null[_consume]().
...
The first acts on &str and is not nul-terminated, the last two act on strings
that are always null terminated (&'static str, ~str and @str).
2013-06-12 12:21:04 +10:00
Brian Anderson
84d2695921
std::rt: Work around a dynamic borrowck bug
2013-06-10 17:46:49 -07:00