Skip to content

Instantly share code, notes, and snippets.

@ypelud
Created October 30, 2015 09:38
Show Gist options
  • Select an option

  • Save ypelud/8de924b183eccf2c167c to your computer and use it in GitHub Desktop.

Select an option

Save ypelud/8de924b183eccf2c167c to your computer and use it in GitHub Desktop.
can't figure out suspend ....
#!/usr/bin/env node
var
Q = require('Q'),
suspend = require('suspend');
function test() {
var q = Q.defer();
setTimeout(function() {
console.log('time out');
q.resolve('test');
}, 1000 * 2);
return q.promise;
}
function process_starter() {
console.log('before suspend');
suspend(function*() {
console.log('before promise');
var q = yield test();
// resume.raw();
console.log('after promise');
console.log('q:'+q);
})();
console.log('after suspend');
};
console.log('before');
var ret = process_starter();
console.log('after');
@ypelud

ypelud commented Oct 30, 2015

Copy link
Copy Markdown
Author

why "after" come before "after promise" ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment