Skip to content

add fiber support #2733

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
wants to merge 4 commits into from
Closed

add fiber support #2733

wants to merge 4 commits into from

Conversation

taoso
Copy link

@taoso taoso commented Sep 2, 2017

Hi, @KalleZ @nikic @laruence , make a new PR against the master branch. And close the #2723

@krakjoe
Copy link
Member

krakjoe commented Sep 13, 2017

unrelated whitespace changes do not belong in this PR

@taoso
Copy link
Author

taoso commented Sep 13, 2017

unrelated whitespace changes do not belong in this PR

@krakjoe I will drop zhese whitespace change later.

@bwoebi
Copy link
Member

bwoebi commented Sep 13, 2017

There is one major problem with this patch: It needs to support callstacks involving internal functions. You do only back up EG(vm_stack). But what about a call of array_map() in the callstack? Or similar functions involving nested execute_ex() calls. (or even a custom executor where zend_execute_ex() will be called recursively for every nesting level)

That's the main complication in the whole idea - and that's why we do not implement that yet. If you have a solution for this (i.e. backing part of the C call stack up, restoring it etc. when necessary) and it being stable under all conditions, I'm fine with moving forward with this. - And no, throwing is not an option under these circumstances. It just may happen too often and subtly.

@taoso taoso closed this Oct 29, 2017
@taoso taoso deleted the fiber2 branch October 29, 2017 05:24
@taoso taoso mentioned this pull request Apr 12, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants