0
0
mirror of https://github.com/rust-lang/rust.git synced 2024-12-01 13:18:54 +01:00
The Rust compiler https://www.rust-lang.org/
Go to file
Jeff Olson 8769409612 rt: adding rust_uv_* binding for kernel malloc and free'ing :/
I need these in the context of doing various malloc/free operations for
libuv structs that need to live in the heap, because of API workflow
(there's no stack to put them in). This has cropped up several times
when impl'ing the high-level API for things like timers, but I've decided
to take the plunge and use this approach for the net::tcp module.

Technically, this can be avoided by spawning a new
task that contains the needed memory structures on its stack and then
having it block for the duration of the time we need that memory to be
valid (this is what I did in std::timer). Exposing this API provides a
much lower overhead way to address
the issue, albeit with safety concerns. The main mitigation policy should
be to use malloc/free with libuv handles only when the handles, are then
associated with a resource or class-with-dtor. So we have a finite lifetime
for the object and can gaurantee a free(), barring a runtime crash (in
which case you have bigger problems!)
2012-05-22 22:29:16 -07:00
doc doc: Fix as description in tutorial 2012-05-16 20:22:32 -07:00
man Updating the manpage and usage message 2012-01-30 19:02:20 -08:00
mk implement new borrow ck (disabled by default) 2012-05-09 17:00:19 -07:00
src rt: adding rust_uv_* binding for kernel malloc and free'ing :/ 2012-05-22 22:29:16 -07:00
.gitignore Add config.stamp to .gitignore 2012-03-27 22:25:10 -07:00
.gitmodules Update libuv. 2012-02-02 17:39:47 -08:00
AUTHORS.txt Add Gareth Daniel Smith to AUTHORS.txt 2012-05-21 17:38:52 -07:00
configure Update llvm and integrate clang and compiler-rt. 2012-04-30 17:48:38 -07:00
INSTALL.txt Bump version in INSTALL.txt 2012-03-28 22:45:13 -07:00
LICENSE.txt Add Clay license info to LICENSE.txt 2012-05-03 12:50:32 -07:00
Makefile.in build: pass RUSTFLAGS to the compiler 2012-05-19 18:27:16 -07:00
README.txt
RELEASES.txt Fix typo in release notes. 2012-03-28 13:52:47 -07:00

This is a compiler and suite of associated libraries and documentation for the
Rust programming language.

See LICENSE.txt for terms of copyright and redistribution.

See http://www.rust-lang.org for more information.