3
私はV8をC++とネイティブウィンドウと組み合わせて使用していますsetInterval
functonは定義されていません。setInterval関数を定義する方法
ネイティブsetInterval
のようなものを作成するにはどうすればよいでしょうか? setTimeout
を想定し
私はV8をC++とネイティブウィンドウと組み合わせて使用していますsetInterval
functonは定義されていません。setInterval関数を定義する方法
ネイティブsetInterval
のようなものを作成するにはどうすればよいでしょうか? setTimeout
を想定し
が利用可能である(可能性はないが、あなたはそれを指定していない):
function setInterval(fn, t) {
let id = {};
function wrapper() {
id.timeout = setTimeout(wrapper, t);
fn.apply(this, arguments);
}
id.timeout = setTimeout(wrapper, t);
return id;
}
function clearInterval(id) {
clearTimeout(id.timeout);
}
'setTimeout'も定義されていませんが、試してくれてありがとう –
のJavaScript自体がイベントキューにタスクを追加する方法を提供していないので、あなたができるものがありません「純粋な」JavaScriptを使用します。たぶんV8 APIを見ていますか? –
nodejsがタイマーを実装する方法を見てみてください。 –
[pure JavaScriptのsetTimeout()およびsetInterval()の実装](http://stackoverflow.com/questions/35824722/implementing-settimeout-and-setinterval-in-pure-javascript)の重複が考えられます。参照[非同期javascriptはどのように解釈され、Node.jsで実行されますか?](http://stackoverflow.com/questions/36491385/how-is-asynchronous-javascript-interpreted-and-executed-in-node-js) – guest271314