Comments (4)
The problem here is that the stack can't change it's address, resize or realloc the memory would change the stack address, and this would break every thing. Currently I don't know how to generate stack independent code in rust.
from may.
The problem here is that the stack can't change it's address, resize or realloc the memory would change the stack address, and this would break every thing. Currently I don't know how to generate stack independent code in rust.
Whether the required stack space size can be calculated at compile time?
from may.
The problem here is that the stack can't change it's address, resize or realloc the memory would change the stack address, and this would break every thing. Currently I don't know how to generate stack independent code in rust.
I'm not really experienced in this topic, but i was wondering if it would it still break everything if for example coroutine A doesn't have any reference to any object allocated on the stack of coroutine B, in languages like erlang coroutines do not share memory by default and memory management (garbage collection, stack resizing) happens at the coroutine level rather than globally.
from may.
The problem here is that the stack can't change it's address, resize or realloc the memory would change the stack address, and this would break every thing. Currently I don't know how to generate stack independent code in rust.
I'm not really experienced in this topic, but i was wondering if it would it still break everything if for example coroutine A doesn't have any reference to any object allocated on the stack of coroutine B, in languages like erlang coroutines do not share memory by default and memory management (garbage collection, stack resizing) happens at the coroutine level rather than globally.
The expansion and contraction of coroutine memory are generally achieved by copying stack data onto a new stack,
The expansion and contraction of coroutine memory are generally achieved by copying stack data onto a new stack,
For example, the function of the coroutine internally initializes let arr=[0u8, 1u8, 2u8];
And the variable let b=&arr [1];
After the stack space shrinks, variable b becomes invalid, which will destroy everything
from may.
Related Issues (20)
- Queue needs bounds on its Send/Sync traits HOT 2
- Examples don't compile HOT 2
- about performace.md The description is unfair HOT 3
- 建议参考ants,整个协程池
- `may_http`耗时不符合预期 HOT 5
- 建议参考libco,hook系统函数,减少改造成本 HOT 1
- 问下如何正确地hook系统函数?
- support linux io_uring HOT 1
- unify thread and coroutine io handling
- split io read and write event HOT 1
- How does it actually work
- linux: file descriptor leak in epoll code HOT 3
- support cancel feature gate
- macro select! : Polling a channel that already contained data may not trigger recv HOT 3
- Question about coroutine HOT 2
- `go!` macro allows its arguments to do `unsafe` operations. HOT 1
- No `peek` implementation for `net::TcpStream` HOT 2
- How can May be used for shared-nothing architecture? HOT 3
- The go! macro is unsound
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from may.