问题标签 [splice]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1971 浏览

c++ - c++列表拼接帮助

我正在尝试拼接此列表,但在调用拼接时出现错误提示没有匹配函数。据我所知,我所有的#includes 都是正确的。

错误来自调用 temp 的每一行。

0 投票
2 回答
395 浏览

javascript - 在 JavaScript 中按值从数组中删除项目会产生不可预测的结果

我有这段代码用于在 JS 中按值从数组中删除一个项目...

这就是我的数组的样子......

如果我打电话给remove_item(3)这就是注销...

之后应该9,6不是9,3

我对此完全感到困惑,因为它有时有效,有时无效......

例如,我刚刚尝试过remove_item(10),这行得通...

我确定它与这条线有关:

非常感谢任何帮助。

0 投票
1 回答
5152 浏览

javascript - Javascript 错误:使用 jQuery 和数组的 DOM 异常 8

我收到此错误:

未捕获的错误:NOT_FOUND_ERR:DOM 异常 8

这是我的代码(请提出任何建议以使其更高效/更清洁):

基本上,这是一个将其 ID 添加到名为“关键字”的数组中的按钮:

我想要发生的是,当“+ADD”被推送时,id 属性被添加到数组中,当 -REM 被推送时,然后从关键字中删除该 id。

任何建议都会有帮助。当我只是将 $(this).attr("id") 附加到响应 div 时,它会正确打印。我还尝试用“String()”函数包围它(也许它是对资源的引用,而不是实际的字符串?)

感谢时间的负责人!

0 投票
1 回答
3817 浏览

linux - vmsplice() 和 TCP

在最初的vmsplice()实现中,建议如果您的用户级缓冲区是管道中最大页数的 2 倍,则缓冲区后半部分的成功 vmsplice() 将保证内核已使用缓冲区的前半部分。

但这毕竟不是真的,特别是对于 TCP,内核页面会一直保留到从另一端收到 ACK 为止。解决这个问题留作未来的工作,因此对于 TCP,内核仍然必须从管道复制页面。

vmsplice()SPLICE_F_GIFT处理这个问题的选项,但问题是这暴露了另外两个问题——如何有效地从内核获取新页面,以及如何减少缓存垃圾。第一个问题是 mmap 需要内核清除页面,第二个问题是尽管 mmap 可能会使用内核中花哨的kscrubd功能,但这会增加进程的工作集(缓存垃圾)。

基于此,我有以下问题:

  • 通知用户空间安全重用页面的当前状态是什么?我对页面 splice()d 到套接字 (TCP) 上特别感兴趣。在过去的 5 年里发生了什么事情吗?
  • /// 是当前在 TCP 服务器mmap中进行零复制的最佳实践vmsplice,还是我们今天有更好的选择splicemunmap
0 投票
4 回答
7659 浏览

python - Python - 正则表达式 - 在单词之前拆分字符串

我正在尝试在特定单词之前拆分 python 中的字符串。例如,我想在"path:".

  • 拆分字符串之前"path:"
  • 输入:"path:bte00250 Alanine, aspartate and glutamate metabolism path:bte00330 Arginine and proline metabolism"
  • 输出:['path:bte00250 Alanine, aspartate and glutamate metabolism', 'path:bte00330 Arginine and proline metabolism']

我努力了

这不会在任何地方拆分字符串。麻烦的是,"path:"永远不会知道后面的值来指定整个单词。有谁知道如何做到这一点?

0 投票
1 回答
107 浏览

c++ - 两个类型列表是否可以在恒定时间内拼接?

我正在使用 Alexandrescu 的 Modern C++ Design 中定义的类型列表。在他的书中,他谈到了将类型附加到类型列表,但他没有谈到拼接两个类型列表......

我想可以使用 Append 功能拼接两个类型列表,但它不会导致线性时间拼接(而 std::list::splice 是 O(1) )。?

好吧,我知道这个计算时间可以被认为是“免费的”,因为它是编译时间,但我很好奇 :)

谢谢 !

0 投票
2 回答
2407 浏览

udp - Linux splice() 返回 EINVAL(“无效参数”)

我正在尝试使用 splice ( man 2 splice ) 将数据从 UDP 套接字直接复制到文件中。不幸的是,第一次调用 splice() 返回 EINVAL。

手册页指出:

但是,我相信这些条件都不适用。我正在使用 Fedora 15(内核 2.6.40-4),所以我相信所有文件系统都支持 splice()。目标文件在第一次调用 splice 时应该是无关紧要的,但为了完整起见,我将通过open(path, O_CREAT | O_WRONLY | O_TRUNC, S_IRUSR | S_IWUSR). 两个调用都使用管道,并且两个调用都没有使用除 NULL 之外的偏移量。

这是我的示例代码:

sock_fd 由以下伪代码初始化:

可能相关的是此代码片段在 libevent 循环中运行。libevent 使用 epoll() 来确定 UDP 套接字是否热。

0 投票
3 回答
654 浏览

javascript - 复制数组javascript拼接

我在我的代码中遇到了一个奇怪的错误,我无法理解它为什么会发生。

我有一个数组array1。我通过使array2 等于array1 来复制array1。然后我使用 splice 修改 array2 以添加一个数字。Array1不应该被触及?但两者都输出相同的变化。

我假设我混淆了数组分配?在不发生这种情况的情况下复制数组的正确方法是什么?

干杯

0 投票
3 回答
901 浏览

javascript - 删除 javascript 数组中的特定对象

我正在做一个关于删除数组内对象的测试......因为这是一个测试,所以这是一个非正式的代码..

现在这段代码工作正常(删除数组上的一个对象),但它删除了我要删除的那个之后的那个(在上面的代码中,我想删除索引 2 中的对象,但它删除了索引 3 中的对象)

我在这段代码中做错了什么?

蒂亚:)

0 投票
2 回答
784 浏览

linux-kernel - splice() 中的 DMA 复制

我是linux内核的新手。最近,我通过了内核 2.6.33 中的 sendfile 系统调用。以下是我的旅程顺序:

在整个序列中,我没有找到 splice 使用 DMA 副本的地方。那么 DMA 复制发生在哪里?