apache-frift是否支持函数变量作为参数
Does apache thrift support function variable as parameter?
我想使用FuncType
作为foo
函数的参数类型。节俭支持这一点吗?如何定义FuncType
内部的类型?
struct FuncType {
// std::function<std::vector<std::pair<int, int>>(const std::string &)>;
// how to define here?
}
service WorkerService {
bool foo(1:FuncType func)
}
Apache Thrift旨在允许在不同平台和环境之间进行RPC调用。因此,传递std::function<int(int)>
这样的东西是不受支持的:如何将C++中定义的本机函数传递到JavaScript,反之亦然?
(顺便说一句:即使这在某种程度上是可能的,但出于安全原因,允许服务器的用户向ii中注入一些代码通常是个坏主意)。
如果您想要一个具有多个处理选项的函数,请创建一些枚举并将其传递给该函数。更好的是,在您的服务中定义多个功能。如果你想真正允许用户逐个样本处理:要么将所有样本返回给用户,并在客户端进行相应的处理,要么,如果有太多数据无法通过网络一次传递,则提供"迭代器"服务:
struct MyPair {
i32 first;
i32 second;
}
typedef i32 QueryId;
service MyService {
QueryId startProcessing();
MyPair getNextSample(1: QueryId id);
}
相关文章:
- 如何将C++闭包与变量参数同时重用——类似于JavaScript
- 扩展可变参数模板中的变量名称
- 在类构造函数中定义结构变量的参数
- 带有整数的变量参数列表
- 转发变量参数列表以模拟 std::thread
- 如何在不传递命令行参数的情况下在 c++ 中设置环境变量
- 存储稍后要转发的变量参数
- C++具有模板成员变量的类. 和参数内存输出
- 我应该如何在没有变量的情况下将相同的参数传递给 CMAKE 中的多个目标?
- 为变量模板的每个参数调用模板函数
- 具有推导参数的模板函数指针数组变量
- 函数参数变量总是需要 & 或 * 运算符吗?
- 为什么 beginthreadex 线程参数变量在父线程中没有更新
- 在 Metal 着色器代码中,如何定义函数的 in/out 参数变量?
- 如何在函数中使用非参数变量?
- 即将将引用作为函数中的参数传递以更改参数变量的值
- 基于不断变化的参数/变量的XML get值
- cocos2d-x v3 CallFunc作为参数/变量如何
- 在编译时使用c++元编程中的运行时参数(变量)
- 我可以返回一个非参数变量吗?