小编kki*_*che的帖子

使用Golang读取随机内存位置

晚上好,

我一直在尝试构建一个golang应用程序,它扫描内存中的值,但我正在努力了解如何解决特定的内存位置.我知道当访问应用程序中的内存时,您可以使用*variablenamedeference并获取地址位置,但是我如何提供地址位置并将值打印到屏幕或从RAM中获取任何大小的下一个分配对象并打印它的值?

提前感谢您愿意分享的任何帮助

go memory-access memory-address

15
推荐指数
1
解决办法
1810
查看次数

jQuery .show()将style ="display:inline-block"添加到元素中

我正在一个我在工作中继承的网站上工作,该网站使用进度条/标签显示捐赠进度.大多数名单将有9年(例如1990-1999),但最后一个有13年(2000-2012).因此,我有一个javascript函数showHiddenBars()显示/隐藏各个元素.

在第一次加载时,一切都正确显示(默认显示2000-2012)但是在隐藏它们然后显示它们之后,它会弄乱布局.据我所知,谷歌Chrome的检查员是在使用该.show()功能时,它会添加style="display: inline-block"到我的span元素中,该元素包含标签.我正在使用clipjQuery UI 的缓动效果与show和hide函数.

如何防止.show添加style ="display:inline-block;"

完整的Javascript:http://pastebin.com/ZmbQqwWF

完整的HTML:http://pastebin.com/mf6W1ahF

示例站点:http://kirsches.us/3000Strong/decadeProgress.html

javascript:

function showHiddenBars() {
    "use strict";
    //show the bars we aren't using.
    $('#decade10').show("clip");
    $('#decade11').show("clip");
    $('#decade12').show("clip");
    $('#decade13').show("clip");
    $('#decade10label').show("clip");
    $('#decade11label').show("clip");
    $('#decade12label').show("clip");
    $('#decade13label').show("clip");
    $('#decade10AmountGiven').show("clip");
    $('#decade11AmountGiven').show("clip");
    $('#decade12AmountGiven').show("clip");
   $('#decade13AmountGiven').show("clip");
}
function hideHiddenBars() {
   "use strict";
    //hide the bars we aren't using.
    $('#decade10').hide("clip");
    $('#decade11').hide("clip");
    $('#decade12').hide("clip");
    $('#decade13').hide("clip");
    $('#decade10label').hide("clip");
    $('#decade11label').hide("clip");
    $('#decade12label').hide("clip");
    $('#decade13label').hide("clip");
    $('#decade10AmountGiven').hide("clip");
    $('#decade11AmountGiven').hide("clip");
    $('#decade12AmountGiven').hide("clip");
    $('#decade13AmountGiven').hide("clip");
}
Run Code Online (Sandbox Code Playgroud)

HTML:

<div id="decadeProgressContainer">
    <span …
Run Code Online (Sandbox Code Playgroud)

css jquery jquery-ui show-hide

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

Elixir Supervisors - 您如何命名监督任务

我真的在与Elixir主管挣扎,并弄清楚如何命名它们以便我可以使用它们.基本上,我只是想开始一个监督Task,我可以发送消息.

所以我有以下内容:

defmodule Run.Command do
  def start_link do
    Task.start_link(fn ->
      receive do
        {:run, cmd} -> System.cmd(cmd, [])
      end
    end)
  end
end
Run Code Online (Sandbox Code Playgroud)

项目入口点为:

defmodule Run do
  use Application

  # See http://elixir-lang.org/docs/stable/elixir/Application.html
  # for more information on OTP Applications
  def start(_type, _args) do
    import Supervisor.Spec, warn: false

    children = [
      # Define workers and child supervisors to be supervised
      worker(Run.Command, [])
    ]

    # See http://elixir-lang.org/docs/stable/elixir/Supervisor.html
    # for other strategies and supported options
    opts = [strategy: :one_for_one, name: Run.Command]
    Supervisor.start_link(children, opts) …
Run Code Online (Sandbox Code Playgroud)

elixir erlang-otp erlang-supervisor

8
推荐指数
1
解决办法
1758
查看次数

如何使用 Elixir 打包/解包十六进制字符串(高半字节在前)

我想知道如何在 Elixir 中使用十六进制字符串。具体来说,我对从十六进制转换为 ASCII 感兴趣。

在 Ruby 中,其实现可能是:

["001C7F616A8B002128C1A33E8100"].pack('H*').gsub(/[^[:print:]]/, '.')
Run Code Online (Sandbox Code Playgroud)

我如何使用 Elixir 完成这项任务?我努力了:

<<00, 01, C7, F6...>>
Run Code Online (Sandbox Code Playgroud)

但这不是字符串的十六进制的正确表示。感谢您的时间和帮助!

所以我已经取得了一些进展,但目前正在努力解决递归方面的问题。

到目前为止,这是我的解决方案:

defmodule ElixirNetworkTools do
  def decode(payload) do
    upper_payload = String.upcase payload
    case Base.decode16(upper_payload) do
      :error -> decode_with_nonprintable_characters(payload)
      {:ok, decoded_payload} -> decoded_payload
    end
    |> IO.write
  end

def decode_with_nonprintable_characters(payload) do
String.chunk(payload, ~r/\w{2}/)
|> Enum.each(fn(byte) ->
  case Base.decode16(byte) do
    :error -> '.'
    {:ok, decoded_payload} -> decoded_payload
      end
    end)
  end
end
Run Code Online (Sandbox Code Playgroud)

hex elixir

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

Elixir:用于监督过程的invalid_child_spec.无法弄清楚为什么

我正在努力第一次实现一个主管,我遇到了一些我无法从文档中找到的问题.具体来说,当我尝试使用SlowRamp.flood我开始我的过程{:error, {:invalid_child_spec, []}}.

这是一个非常简单的应用程序,使用mix new slow_ramp --sup.

主要文件./lib/slow_ramp.ex是:

defmodule SlowRamp do
  use Application

  # See http://elixir-lang.org/docs/stable/elixir/Application.html
  # for more information on OTP Applications
  def start(_type, _args) do
    import Supervisor.Spec, warn: false

    children = [
      worker(SlowRamp.Flood, [])
    ]

    # See http://elixir-lang.org/docs/stable/elixir/Supervisor.html
    # for other strategies and supported options
    opts = [strategy: :one_for_one, name: SlowRamp.Supervisor]
    Supervisor.start_link(children, opts)
  end

  def flood do
    Supervisor.start_child(SlowRamp.Supervisor, [])
  end
end
Run Code Online (Sandbox Code Playgroud)

我的子函数/文件在./lib/SlowRamp/flood.ex,看起来像这样:

defmodule SlowRamp.Flood do
  def start_link do
    Task.start_link(fn -> …
Run Code Online (Sandbox Code Playgroud)

elixir erlang-otp

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

如何在Python的gRPC库中设置超时

我有一个grpc服务器/客户端,今天偶尔会挂起,导致问题.这是从Flask应用程序调用的,该应用程序使用后台工作进程检入以确保它处于活动状态/正常运行状态.要向gRPC服务器发出请求,我有:

try:
        health = self.grpc_client.Health(self.health_ping)
        if health.message == u'PONG':
            return {
                u'healthy': True,
                u'message': {
                    u'healthy': True,
                    u'message': u'success'
                },
                u'status_code': 200
            }
except Exception as e:
        if str(e.code()) == u'StatusCode.UNAVAILABLE':
            return {
                u'healthy': False,
                u'message': {
                    u'healthy': False,
                    u'message': (u'[503 Unavailable] connection to worker '
                                 u'failed')},
                u'status_code': 200}
        elif str(e.code()) == u'StatusCode.INTERNAL':
            return {
                u'healthy': False,
                u'message': {
                    u'healthy': False,
                    u'message': (u'[500 Internal] worker encountered '
                                 u'an error while responding')},
                u'status_code': 200}
        return {
            u'healthy': False,
            u'message': {u'healthy': False, …
Run Code Online (Sandbox Code Playgroud)

python grpc

5
推荐指数
3
解决办法
7140
查看次数

如何监听ICMP数据包?

我正在开发一个两部分应用程序,其中一方发送ICMP数据包,另一方侦听ICMP数据包并在收到它们时采取行动.问题是,我不确定如何让监听器无限期地保持活着(只是希望它坐在循环中,只在收到数据包时才采取行动).

目前,我能够使用go-fastping库,如果是双向通信,我可以发送和接收数据包(我发送它,它们响应,我处理远程响应).问题是如何使这种不对称?

我对听众的尝试是:

for {
    conn, err := icmp.ListenPacket("ip4:icmp", "192.168.1.8")
    if err != nil {
        fmt.Println(err)
    }
}
Run Code Online (Sandbox Code Playgroud)

但这不起作用.我的逻辑是我想要一个while true循环来保持监听器活着(在这种情况下就是这样for {),然后我用ICMP监听新的数据包,ListenPacket但我似乎没有使用这种方法得到任何东西.

任何想法或帮助将不胜感激.提前感谢您的时间和帮助.

sockets network-programming listener go icmp

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

Python gRPC服务器未启动

我已经使用proto3和python创建了一个gRPC服务器,以对运行时间较长的守护程序进行基本的运行状况检查。但是,当我启动应用程序时,它实际上并没有启动gRPC服务器。我想知道是否有人可以帮助确定为什么它无法启动并提供gRPC API

原型定义:health.proto

syntax = "proto3";

option java_multiple_files = true;
option java_package = "com.redacted.example.worker";
option java_outer_classname = "ExampleWorker";
option objc_class_prefix = "DSW";

package exampleworker;

service Worker {
  rpc Health (Ping) returns (Pong) {}
}

// The request message containing PONG
message Ping {
  string message = 1;
}

// The response message containing PONG
message Pong {
  string message = 1;
}
Run Code Online (Sandbox Code Playgroud)

然后我使用以下命令生成了python代码:

python -m grpc_tools.protoc -I=../protos --python_out=. --grpc_python_out=. ../protos/health.proto
Run Code Online (Sandbox Code Playgroud)

这生成了health_pb2.pyhealth_pb2_grpc.py文件。接下来,我创建了一个服务器文件:

u"""Health server is used to …
Run Code Online (Sandbox Code Playgroud)

python protocol-buffers grpc

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