我尝试过用几种方法引用erlang中派生的进程,以使它们与gen_server调用中From的日志记录兼容。到目前为止,我尝试过P1ID = {spawn(fun() -> self() end), make_ref()},,以捕获from()的结构,如关于gen_server:reply的文档中所述:erlang文档我还没有成功,关于make_ref()的文档相当稀少。
gen_server
From
P1ID = {spawn(fun() -> self() end), make_ref()},
from()
gen_server:reply
make_ref()
ma8fv8wu1#
您是否尝试构建{Pid,Ref}元组以便从测试中测试handle_call()gen_server回调?如果是,您不应该直接测试这些gen_server内部。而是添加更高级别的函数到您的模块(将调用gen_server调用/cast/..函数)并测试那些spawn()已经返回了一个pid(),所以没有理由从派生的进程返回self()。希望能有所帮助
1条答案
按热度按时间ma8fv8wu1#
您是否尝试构建{Pid,Ref}元组以便从测试中测试handle_call()gen_server回调?
如果是,您不应该直接测试这些gen_server内部。而是添加更高级别的函数到您的模块(将调用gen_server调用/cast/..函数)并测试那些
spawn()已经返回了一个pid(),所以没有理由从派生的进程返回self()。
希望能有所帮助