如何在vuser_init中保存每个线程的变量以便在Action块中重复使用?

时间:2013-07-23 22:05:20

标签: loadrunner

在我的Loadrunner程序中,我在vuser_init中有一个初始化块,用于修改句柄的值。

static int handle =0;
Init(&handle);

在这种情况下,Init函数会修改指向句柄的指针。修改后的句柄被其他函数用作Action块中的参数。问题是handle的静态值适用于第一个线程但不适用于其他线程,因为它们都读取相同的静态值。我需要的是每个线程的句柄的静态值,以便在线程的每次迭代期间调用的Action块可以获得自己的句柄。有没有办法将句柄保存到列表或地图或C中的一些可被Loadrunner识别的结构?

1 个答案:

答案 0 :(得分:0)

只需构建您想要的任何C结构并使用它。 LoadRunner是来自LCC编译器的ANSI C.

您可以创建链接列表以及全局添加和删除功能,只需管理您的句柄即可。这是C.拍摄月球并实施它。

我不确定每个线程的句柄值是什么意思?你的意思是每个虚拟用户?我问,因为Web虚拟用户可以拥有多个线程。

如果您正在寻找每个虚拟用户捕获不同的动态会话信息,这是常见的,可以使用标准的loadrunner函数来捕获信息。此信息可以传递给C函数,也可以保存在C变量中。

如果您尝试将一些不同的东西绑定到单个虚拟用户中的每个线程,那么您可能会在使用LoadRunner扩展的Visual Studio中构建的C / C ++中的DLL虚拟路径上(请参阅VUGEN手册,使用Visual Studio构建虚拟用户)