function options#

function.options()#

包名:org.yuanrong.call

接口说明#

public FunctionHandler<R> options(InvokeOptions opt)#

FunctionHandler 类的成员方法,用于动态修改被调用函数的参数。

Config conf = new Config("FunctionURN", "ip", "ip", "", false);
YR.init(conf);
InvokeOptions opts = new InvokeOptions();
opts.setCpu(300);
FunctionHandler<String> f_h = YR.function(MyYRApp::myFunction).options(opts);
ObjectRef res = f_h.invoke();
System.out.println("myFunction invoke ref:" + res.getObjId());
YR.Finalize();

public VoidFunctionHandler options(InvokeOptions opt)#

VoidFunctionHandler 类的成员方法,用于动态修改被调用 void 函数的参数。

Config conf = new Config("FunctionURN", "ip", "ip", "", false);
YR.init(conf);

InvokeOptions invokeOptions = new InvokeOptions();
invokeOptions.setCpu(1500);
invokeOptions.setMemory(1500);
VoidFunctionHandler<String> functionHandler = YR.function(MyYRApp::myVoidFunction).options(invokeOptions);
functionHandler.invoke();
YR.Finalize();

public InstanceCreator<A> options(InvokeOptions opt)#

InstanceCreator 类的成员方法,用于动态修改被调用 java 函数的参数。

InvokeOptions invokeOptions = new InvokeOptions();
invokeOptions.setCpu(1500);
invokeOptions.setMemory(1500);
InstanceCreator instanceCreator = YR.instance(Counter::new).options(invokeOptions);
InstanceHandler instanceHandler = instanceCreator.invoke(1);

public InstanceFunctionHandler<R> options(InvokeOptions options)#

InstanceFunctionHandler 类的成员方法,用于动态修改被调用 java 函数的参数。

YR.init(conf);
InvokeOptions options = new InvokeOptions();
options.setConcurrency(100);
options.getCustomResources().put("nvidia.com/gpu", 100F);
InstanceCreator<MyYRApp> f_instance = YR.instance(MyYRApp::new);
InstanceHandler f_myHandler = f_instance.invoke();
InstanceFunctionHandler<String> f_h = f_myHandler.function(MyYRApp::myFunction);
ObjectRef res = f_h.options(options).invoke();
System.out.println("myFunction invoke ref:" + res.getObjId());
//预期结果:"myFunction invoke ref: obj-***-***"
YR.Finalize();

public VoidInstanceFunctionHandler options(InvokeOptions options)#

VoidInstanceFunctionHandler 类的成员方法,用于动态修改被调用 void 函数的参数。

Config conf = new Config("FunctionURN", "ip", "ip", "", false);
YR.init(conf);

InvokeOptions invokeOptions = new InvokeOptions();
invokeOptions.addCustomExtensions("app_name", "myApp");
InstanceHandler instanceHandler = YR.instance(MyYRApp::new).invoke();
VoidInstanceFunctionHandler insFuncHandler = instanceHandler.function(MyYRApp::myVoidFunction).options(invokeOptions);
insFuncHandler.invoke();
YR.Finalize();

public JavaFunctionHandler<R> options(InvokeOptions opt)#

JavaFunctionHandler 类的成员方法,用于动态修改被调用函数的参数。

InvokeOptions invokeOptions = new InvokeOptions();
invokeOptions.setCpu(1500);
invokeOptions.setMemory(1500);
JavaFunctionHandler javaFuncHandler = YR.function(JavaFunction.of("com.example.YrlibHandler$MyYRApp", "smallCall", String.class))
                .setUrn("sn:cn:yrk:12345678901234561234567890123456:function:0-opc-opc:$latest");
ObjectRef ref = javaFuncHandler.options(invokeOptions).invoke();
String result = (String)YR.get(ref, 15);

public JavaInstanceCreator options(InvokeOptions opt)#

JavaInstanceCreator 类的成员方法,用于动态修改被调用 java 函数的参数。

InvokeOptions invokeOptions = new InvokeOptions();
invokeOptions.setCpu(1500);
invokeOptions.setMemory(1500);
JavaInstanceCreator javaInstanceCreator = YR.instance(JavaInstanceClass.of("com.example.YrlibHandler$MyYRApp")).setUrn("sn:cn:yrk:12345678901234561234567890123456:function:0-opc-opc:$latest").options(invokeOptions);
JavaInstanceHandler javaInstanceHandler = javaInstanceCreator.invoke();
ObjectRef ref = javaInstanceHandler.function(JavaInstanceMethod.of("smallCall", String.class)).invoke();
String res = (String)YR.get(ref, 100);

public JavaInstanceFunctionHandler<R> options(InvokeOptions opt)#

JavaInstanceFunctionHandler 类的成员方法,用于动态修改被调用 java 函数的参数。

InvokeOptions invokeOptions = new InvokeOptions();
invokeOptions.addCustomExtensions("app_name", "myApp");
JavaInstanceHandler javaInstanceHandler = YR.instance(JavaInstanceClass.of("com.example.YrlibHandler$MyYRApp")).setUrn("sn:cn:yrk:12345678901234561234567890123456:function:0-opc-opc:$latest").invoke();
JavaInstanceFunctionHandler javaInstFuncHandler = javaInstanceHandler.function(JavaInstanceMethod.of("smallCall", String.class)).options(invokeOptions);
ObjectRef ref = javaInstFuncHandler.invoke();
String res = (String)YR.get(ref, 100);

public CppFunctionHandler<R> options(InvokeOptions opt)#

CppFunctionHandler 类的成员方法,用于动态修改被调用函数的参数。

public CppInstanceCreator options(InvokeOptions opt)#

CppInstanceCreator 类的成员方法,用于动态修改被调用 C++ 函数的参数。

InvokeOptions invokeOptions = new InvokeOptions();
invokeOptions.setCpu(1500);
invokeOptions.setMemory(1500);
CppInstanceCreator cppInstanceCreator = YR.instance(CppInstanceClass.of("Counter","FactoryCreate")).setUrn("sn:cn:yrk:12345678901234561234567890123456:function:0-opc-opc:$latest").options(invokeOptions);
CppInstanceHandler cppInstanceHandler = cppInstanceCreator.invoke(1);
ObjectRef ref = cppInstanceHandler.function(CppInstanceMethod.of("Add", int.class)).invoke(5);
int res = (int)YR.get(ref, 100);

public CppInstanceFunctionHandler<R> options(InvokeOptions opt)#

CppInstanceFunctionHandler 类的成员方法,用于动态修改被调用 C++ 函数的参数。