小编mrp*_*ker的帖子

Perl如何从数组哈希中检索数组?

我对Perl很新,所以请原谅我,如果这看起来像一个简单的问题......

无论如何,我有一个数组哈希,我正在尝试检索哈希中的一个数组,但我能得到的只是数组的标量大小.

%HoA = a hash of arrays
$key = some key in the hash

foreach $nextItem (@HoA{$key}) {
  do a bunch of stuff with $nextItem
}
Run Code Online (Sandbox Code Playgroud)

当我这样做时,$ nextItem总是只是数组的大小,循环只运行一次.我试过打印以下内容:

@HoA{$key}
$HoA{$key}
@$HoA{$key}
Run Code Online (Sandbox Code Playgroud)

前两个给我标量大小,第三个给了我什么......我在这里缺少什么?

更新:我想知道我的问题是否实际上是我将数组添加到哈希中的方式.这是我正在做的事情:

@HoA{$key} = split(/ /, $list);
Run Code Online (Sandbox Code Playgroud)

这会将数组粘贴在散列中,还是哈希中的数组大小?

更新2:我尝试了以下代码块:

my $key = "TEST";
my %HoA = ();
my @testarray = (1, 2, 3);
@HoA{$key} = @testarray;
print Dumper(%HoA);
Run Code Online (Sandbox Code Playgroud)

这是输出:

$VAR1 = 'TEST';
$VAR2 = 1;
Run Code Online (Sandbox Code Playgroud)

为什么它只是坚持数组的第一个值?

perl

18
推荐指数
2
解决办法
4万
查看次数

如何调试 Telegraf?

我正在尝试让 Telegraf 与 InfluxDB 一起使用,但我遇到了困难。我已将以下块添加到 Telegraf 配置文件中:

[[inputs.win_perf_counters.object]]
  # Process metrics, in this case for IIS only
  ObjectName = "Process"
  Instances = ["W3SVC"]
  Counters = ["% Processor Time","Handle Count","Private Bytes","Thread Count","Virtual Bytes","Working Set"]
  Measurement = "win_proc"
Run Code Online (Sandbox Code Playgroud)

然而,当我搜索数据库时,我从未看到该测量结果。我知道该进程正在运行,所以它应该输出一些东西。问题是,即使我打开了日志记录,也没有日志文件。事件查看器中也没有任何内容。由于没有下载源代码并在本地调试器中运行程序,我不知道如何继续。有人有什么想法吗?

influxdb telegraf

12
推荐指数
2
解决办法
4万
查看次数

如何用jquery关闭bootstrap下拉菜单?

好吧,我昨天问了一个问题,结果证明完全不合适.我认为我现在处于更加坚实的基础上,但仍然存在问题.我在按钮组中有一个bootstrap下拉菜单,如下所示:

<div class="btn-group" id="openItems">
    <button class="btn btn-custom-top dropdown-toggle" data-toggle="dropdown"><span class="caption"></span><span class="caret"></span></button>
    <ul class="dropdown-menu" id="openItemDropdown">
    </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

将鼠标移出菜单后,我希望它能够关闭.我几乎让它工作但不完全.

$(document).ready(function ()
{
    $('.dropdown-menu').mouseleave(function ()
    {

        $(".dropdown-toggle").dropdown('toggle');
    });
});
Run Code Online (Sandbox Code Playgroud)

这个问题是它切换了页面上的所有下拉菜单.我已经试过检查.hasClass('active')$(this),但它始终返回false.我怀疑这是因为$(this)实际上是.dropdown菜单节点而不是.dropdown-toggle节点.但是,遍历节点很棘手,似乎并不适用于所有浏览器.有GOT是一种总是关闭列表而不是切换它们的方法.

javascript jquery twitter-bootstrap

6
推荐指数
1
解决办法
2万
查看次数

SQL Server 中动态 SQL 比静态 SQL 性能更高吗?

我有一个同事声称在很多情况下动态 SQL 比静态 SQL 执行得更快,所以我经常看到 DSQL 到处都是。除了明显的缺点(例如在运行之前无法检测到错误以及难以阅读)之外,这是否准确?当我问他为什么一直使用 DSQL 时,他说:

当静态不会阻止缓存重用时,首选静态;当静态会阻止缓存重用且需要重用时,首选动态。

我问为什么静态 SQL 会阻止缓存重用,他说:

显然,当变量传递给语句谓词时,它可能会阻止该执行计划的缓存重用,而 DSQL 将允许在存储过程中重用缓存。

因此,例如:

select * from mytable where myvar = @myvar
Run Code Online (Sandbox Code Playgroud)

我不是 SQL Server 执行计划方面的专家,但这对我来说似乎不合理。为什么引擎会将统计信息保存在存储过程中的 DSQL 语句中,而不是静态 SQL 语句中?

sql sql-server

5
推荐指数
1
解决办法
2688
查看次数

使用 git,我可以在不删除旧分支的情况下检出 Visual Studio 中的分支吗?

我是 git 新手,我们刚刚从 TFS 2010 切换到 git。我们在远程服务器上从主分支创建了一个新的主分支和 3 个子分支。我安装了 VS 插件并克隆了远程存储库,它将所有主文件下载到本地存储库中。

现在,当我从其他远程分支之一创建一个新的本地分支时,它会删除主分支的所有本地文件,并将它们替换为新签出的分支的文件。当我再次结帐 master 时,它再次在本地删除新分支并将其替换为 master 分支。

有没有办法保留本地文件,以便在分支之间快速切换,而不必一直重新下载每个文件?

git visual-studio-2015

3
推荐指数
1
解决办法
9470
查看次数