enqueJob method

int enqueJob(
  1. JSJobFunc jobFunc, {
  2. int argc = 0,
  3. List<JSValue>? argv,
})

Implementation

int enqueJob(JSJobFunc jobFunc, {int argc = 0, List<JSValue>? argv}) {
  _jobFuncNC = NativeCallable.isolateLocal((
    JSContextRef ctx,
    int argc,
    JSValueRef argv,
  ) {
    return jobFunc.call(JSContext(ctx), argv.toList(this, argc)).ref.ref;
  });
  argv ??= [];
  try {
    return JS_EnqueueJob(_ref, _jobFuncNC!.nativeFunction, argc, argv.ref);
  } finally {
    argv.free(group: argv.ref); // has dupValue
  }
}