小编Gee*_*esu的帖子

如何通过JObject枚举?

我正在尝试确定如何访问我的JObject中的数据,而我无法确定如何使用它.

JObject Object = (JObject)Response.Data["my_key"];
Run Code Online (Sandbox Code Playgroud)

我可以将它打印到控制台上做Console.WriteLine(对象),我看到数据,它看起来像:

{
 "my_data" : "more of my string data"
...
}
Run Code Online (Sandbox Code Playgroud)

但我不知道如何通过迭代/枚举,任何人有任何想法?我现在正处于亏损状态.

c# json json.net

101
推荐指数
4
解决办法
10万
查看次数

将回调函数传递给另一个类

我基本上试图将一个方法传递给另一个稍后要调用的类,但是在C#中无法解决这个问题(我还习惯于Objective-C).

public class Class1{

    private void btn_click(object sender, EventArgs e)
    {
        ServerRequest sr = new ServerRequest();
        sr.DoRequest("myrequest", myCallback);
    }

    public void myCallback(string str)
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

然后我希望我的ServerRequest类基本上触发回调函数,这是不可能的?(我基本上打电话给服务器,以便对我的软件进行登录响应)

我无法找到与代表这样做的方法,不断得到错误.这是另一个类:

public class ServerRequest
{
    public void DoRequest(string request, Delegate callback)
    {
        // do stuff....
        callback("asdf");
    }
}
Run Code Online (Sandbox Code Playgroud)

这可能在#?在Objective-C中,这很简单,我会做类似的事情

[myObject performSelector(@selector(MyFunctionName)) withObjects:nil];
Run Code Online (Sandbox Code Playgroud)

c#

87
推荐指数
5
解决办法
14万
查看次数

编译的单声道丢失默认.NET库 - 未定义或导入System.Object

我在OS X Mavericks上按照以下指南编译单声道:http://www.mono-project.com/docs/compiling-mono/mac/

现在,当我使用xbuild编译我的应用程序时,我收到以下错误:

CSC: error CS0518: The predefined type `System.Object' is not defined or imported
CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported
CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported
CSC: error CS0518: The predefined type `System.Int32' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported
CSC: error CS0518: The predefined type `System.Int64' is not defined or imported
CSC: …
Run Code Online (Sandbox Code Playgroud)

c# macos mono xbuild

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

无法使用Xcode 4构建 - 所选的运行目标对此操作无效

所以我对这个错误感到非常困惑,Stack Overflow上的其他线程提到我应该设置SDK,但我认为没有选择这样做.我正在努力建立:http://wafflesoftware.net/shortcut/

我没有选择,我只能选择我的Mac 64位,我希望它在32位.真的开始讨厌Xcode 4了.

这是我尝试编辑我的方案时的屏幕截图:http://groovyape.com/scheme.png

思考?

xcode cocoa xcode4

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

你可以从另一个线程访问UI元素吗?(没有设定)

我在google/here上看到很多线程在UPDATING来自另一个线程的UI元素.

如果我想获得复选框的值,该怎么办?

我能不做任何特别的事情吗?

c# wpf multithreading

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

C++ Linux Binary以SIGKILL信号终止 - 为什么?(加载到GDB中)

所以我在GDB中启动我的c ++应用程序,当它退出时,我基本上得到:

[Thread 0x7fff76e07700 (LWP 6170) exited]
[Thread 0x7fff76f08700 (LWP 6169) exited]
[Thread 0x7fff77009700 (LWP 6168) exited] 
...
Program terminated with signal SIGKILL, Killed. The program no longer exists.
(gdb)
Run Code Online (Sandbox Code Playgroud)

我真的不知道为什么会发生这种情况,为什么我不能做回溯看它是如何退出的呢?有人有主意吗?它应该永远不会结束:(

谢谢!

c++ ubuntu gdb

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

phantomjs - 没有为任何XHR/POST/GET AJAX请求发送Cookie

尝试使用PhantomJS登录时,我发现了一个有趣的问题.我不知道为什么它真的发生了.

基本上你启动一个远程调试器,如下所示:

/usr/local/bin/phantomjs --web-security=no --remote-debugger-port=13379 --remote-debugger-autorun=yes /tmp/test.js 
Run Code Online (Sandbox Code Playgroud)

在远程调试器中:

> location.href = "https://www.mysite.com/login"
> $('input[name="username_or_email"]').val('blah@email.com')
> $('input[name="password"]').val('wrongpassword')

> $('button[type="submit"]').submit()
Run Code Online (Sandbox Code Playgroud)

在Chrome中执行此操作会在XHR请求后给我正确的"错误密码"消息,而使用phantomjs会给我一个通用错误,因为没有使用phantomjs发送cookie(我检查了标题).

我很困惑为什么phantomjs不发送带有POST请求的cookie.有谁知道我们怎么能让phantomjs发送带有所有请求的cookie呢?设置cookie文件也没有任何区别.

cookies xmlhttprequest phantomjs

17
推荐指数
1
解决办法
1743
查看次数

使用keras时尝试重置tensorflow图,失败

我正在开发一个Python 3 API w/gunicorn,它使用keras来计算图像的向量,非常简单.

如何为每个请求重置存储在内存中的数据?随着时间的推移,请求会增加响应所需的时间.我运行了一个分析器,它特别是在tensorflow中的这一行(每个进程的内存使用量随着时间的推移而缓慢上升):

#tensorflow/python/framework/ops.py:2317:_as_graph_def
graph.node.extend([op.node_def])
Run Code Online (Sandbox Code Playgroud)

随着节点中的数据越来越多,需要更长的时间.这是我执行的代码:

# We have 11439MiB of GPU memory, lets only use 2GB of it:
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.22
sess = tf.Session(config=config)
set_session(sess)
sess.graph.as_default()

# Get the vector for the image
img_size = (224,224)
vgg = VGG16(include_top=False, weights='imagenet')
img = kimage.load_img(tmpfile.name, target_size=img_size)
x = kimage.img_to_array(img)
x = np.expand_dims(x, axis=0)
x = preprocess_input(x)
pred = vgg.predict(x)
vectors = pred.ravel().tolist()
Run Code Online (Sandbox Code Playgroud)

我认为as_default()会有所帮助,但事实并非如此.在获得向量列表后,我也尝试关闭会话,但失败了.

python keras tensorflow

11
推荐指数
1
解决办法
9108
查看次数

快速将多个项目(1000 /秒)添加到sidekiq队列?

我意识到sidekiq有一个push_bulk选项,但我目前受到redis延迟的限制,所以通过push_bulk传递多个项目仍然不够快(只有大约50/s).

我试图增加redis连接的数量,如下所示:

redis_conn = proc {
  Redis.new({ :url => Rails.configuration.redis.url })
}

Sidekiq.configure_client do |config|
  Sidekiq.configure_client do |config|
    config.redis = ConnectionPool.new(size: 50, &redis_conn)
  end
  config.client_middleware do |chain|
    chain.add Sidekiq::Status::ClientMiddleware
  end
end
Run Code Online (Sandbox Code Playgroud)

然后触发单独的线程(Thread.new)以实际对各种对象执行perform_async.有趣的是,任何不是第一个线程的线程都不会被抛入sidekiq队列,就像它们被完全忽略一样.

有谁知道更好的方法吗?

编辑:这是我正在尝试的push_bulk方法实际上更慢:

  user_ids = User.need_scraping.pluck(:id)
  bar = ProgressBar.new(user_ids.count)
  user_ids.in_groups_of(10000, false).each do |user_id_group|
    Sidekiq::Client.push_bulk(
      'args'  => user_id_group.map{ |user_id| [user_id] },
      'class' => ScrapeUser,
      'queue' => 'scrape_user',
      'retry' => true
    )
  end
Run Code Online (Sandbox Code Playgroud)

谢谢!

ruby-on-rails redis sidekiq

9
推荐指数
2
解决办法
2853
查看次数

以编程方式确定在另一个进程中加载​​了哪些模块?(OS X)

我想要做的事情我觉得非常简单,我只是不确定如何做到这一点.

具体来说,我只想获得一个在另一个进程中加载​​的模块列表(共享/动态库).以及获取该模块在给定进程中的起始地址.

通过GDB获取此信息非常简单.您只需连接到该流程,然后键入"info shared".这是我想要的确切信息类型.如:

Num Basename
类型地址原因| | 来源| |
| | | | | |
1 Adium
- 0x1000 exec YY /Applications/Adium.app/Contents/MacOS/Adium(offset 0x0)2 dyld
- 0x8fe00000 dyld YY/usr/lib/dyld,位于0x8fe00000(偏移量0x0),前缀为"__dyld_"3 WebCore F 0x95b6a000 dyld YY /System/Library/Frameworks/WebKit.framework/Versions/A/Frameworks/WebCore.framework/Versions/A/WebCore位于0x95b6a000(偏移量0x95b6a000)

有没有人知道如何以编程方式执行此操作?显然,模块负载是动态的,所以我需要确定它的位置.

macos xcode gdb objective-c

8
推荐指数
2
解决办法
3206
查看次数