小编Raf*_*ida的帖子

Browserify tiny-secp256k1

我正在尝试在 Javascript 项目中使用tiny-secp256k1 。我希望代码与 Node.js 和浏览器兼容,索引文件中的 require 模块是:

const createHmac = require('create-hmac')
const ecc = require('tiny-secp256k1')
Run Code Online (Sandbox Code Playgroud)

Browserify对于create-hmac没有问题,但对于tiny-secp256k1我收到以下错误:

Error: Can't walk dependency graph: Cannot find module 'tiny-secp256k1'
Run Code Online (Sandbox Code Playgroud)

在 github 存储库中,有一些在 React 应用程序中使用的库的示例。但我不知道它是如何工作的。

可以在浏览器中使用这个库吗?

javascript browserify secp256k1

9
推荐指数
0
解决办法
717
查看次数

数组的Javascript索引是数组

我不明白下一行代码的 Javascript 解释:

var a = ["value"];
console.log(a[0]); // value
console.log(a[[0]]); // value
console.log(a[[[0]]]); // value
//...
Run Code Online (Sandbox Code Playgroud)

为什么将数组视为值 0?

javascript arrays

7
推荐指数
1
解决办法
103
查看次数

Nodejs 分析,epoll_pwait 是否影响性能?

我正在开发一个 Node-js 应用程序,它需要 MIDI 输入并发送 MIDI 输出。

为了测量和提高应用程序的性能,按照本指南,我在使用应用程序时提取了 CPU 使用情况配置文件。

这是所获得数据的摘录:

   [Summary]:
   ticks  total  nonlib   name
    495    1.7%    2.0%  JavaScript
  24379   85.3%   96.9%  C++
     50    0.2%    0.2%  GC
   3430   12.0%          Shared libraries
    272    1.0%          Unaccounted
Run Code Online (Sandbox Code Playgroud)

现在我觉得可疑的部分是下一个:

  ticks parent  name
 24080   84.3%  epoll_pwait
Run Code Online (Sandbox Code Playgroud)

显然,我很大一部分蜱虫属于同一功能。

根据此文档

通过事件提供者(例如epoll_wait)从事件队列(例如内核)接收事件

因此,从我的角度来看,事件循环线程使用该函数在空闲状态下轮询事件。这意味着对 epoll_pwait 的调用比例较高意味着事件循环线程很少被阻塞,这对性能有好处。

使用top命令我可以看到应用程序的CPU使用率很低(大约3%)

问题是,epoll_pwait 调用是否会影响性能?如果是这样,我可以以某种方式改进吗?

performance epoll node.js

7
推荐指数
0
解决办法
310
查看次数

在Haskell do语句中合并动作

我正在尝试学习haskell中的语句如何工作。我试图制作一个非常简单的程序,您可以在其中调用REST端点并执行系统命令(诸如“ ls”之类的非常简单的问题),问题在于将不同的动作类型组合在一个do语句中。


import Web.Scotty
import System.Cmd

main = do
  putStrLn "Starting Server"
  scotty 3000 $ do
    get "/url" $ do                         
      system "ls"
      text "Success"
Run Code Online (Sandbox Code Playgroud)

但是我得到了下一个编译器错误:

Main.hs:12:7:
    Couldn't match expected type ‘Web.Scotty.Internal.Types.ActionT
                                    Data.Text.Internal.Lazy.Text IO a0’
                with actual type ‘IO GHC.IO.Exception.ExitCode’
    In a stmt of a 'do' block: system "ls"
    In the second argument of ‘($)’, namely
      ‘do { system "ls";
            text "Success" }’

Run Code Online (Sandbox Code Playgroud)

我很难学习Haskell!

monads haskell functional-programming

4
推荐指数
1
解决办法
109
查看次数