我的多个线程并行运行。 任何请求都可以从多次的任何线程中被触发。 我已使用 vars.put()将请求变量存储在beanshell中。 我使用 vars.get()在另一个beanshell中检索了这些变量。 但是当Thread并行运行时,我希望在重新获取变量时使用它 应该检索当前Thread的值。 在java中有点像我们如何使用这个关键字并获取当前对象的属性。 我怎么能这样做?
int ThreadNum = ctx.getThreadNum();
String[] Request_values= new String[Request_variables.length];
我如何将线程号码连接到Request_values?
答案 0 :(得分:3)
JMeter变量基本上是ThreadLocal,因此您不需要做任何事情。
如果需要访问线程2中线程1的变量值,可以使用${__threadNum} function作为前缀或后缀,将当前线程编号附加到JMeter变量名称。
答案 1 :(得分:2)
你可以使用 vars.putObject(“”,“”)来放置你的字符串数组; 在这个时候你可以用keyname连接你的主题号码。
int ThreadNum = ctx.getThreadNum();
String[] Request_values= new String[Request_variables.length];
vars.putObject("Key_"+ThreadNum ,Request_values);