Vm2: Promiseの無限ループ。その後、プロセス全体がハングします。

作成日 2018年01月12日  ·  4コメント  ·  ソース: patriksimek/vm2

このコードはタイムアウトを無視し、プロセスをハングさせます。

'use strict'

const {VM} = require('vm2')

const vm = new VM({
    timeout: 5000,
})

console.log('Runs')

vm.run('Promise.resolve(42).then(() => {while(true) {}})') // hangs the process

setImmediate(console.log, 'Will never run')

そして、Promiseを簡単に無効にすることはできません:#74。

stale

全てのコメント4件

Readme.md

重要:タイムアウトはNodeVMには効果的ではないため、while(true){}または同様の悪の影響を受けません。

@awiebeを除いて、 NodeVM VMを使用しています。

残念ながら、これはノードのタイムアウト機能のもう1つの制限です。非同期呼び出しでは、サンドボックスで実行されている場合でも機能しません。

この問題は、最近のアクティビティがないため、自動的に古いものとしてマークされています。 それ以上のアクティビティが発生しない場合は閉じられます。 貢献していただきありがとうございます。

このページは役に立ちましたか?
0 / 5 - 0 評価