问题列表 - 第18584页

线程间通信.如何将信号发送到另一个线程

在我的应用程序中,我有两个线程

  1. 大多数时候都很忙的"主线"
  2. 一个"附加线程",它发出一些HTTP请求,并阻塞直到它得到响应.

但是,HTTP响应只能由主线程处理,因为它依赖于它的线程本地存储和非线程安全功能.

我正在寻找一种方法来告诉主线程何时收到HTTP响应和相应的数据.主线程应该被附加线程中断并尽快处理HTTP响应,然后继续从之前中断的点开始工作.

  • 我可以考虑的另一种方法是使用附加线程挂起主线程SuspendThread,使用内联汇编器从主线程复制TLS,然后执行响应处理函数并在之后恢复主线程.

  • 我想到的另一种方法是,在第二个线程回调例程中的某个特定地址上设置一个断点,这样当第二个线程指令指针在该断点上步进时,主线程就会收到通知 - 因此 - 已收到HTTP响应.

然而,这两种方法看起来都不是很好,即使只考虑它们也会受到伤害,而且它们看起来并不可靠.

我可以用什么来打断我的主线程,说它应该礼貌并在做其他事情之前处理HTTP响应?我们赞赏没有依赖库的答案,但如果它提供了一些很好的解决方案,我也会采取一些依赖.

以下问题(关于QueueUserAPC解决方案)得到了解答,并解释说在我的案例中没有安全的方法来推动行为.

c++ windows multithreading signals

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

Android语音通话记录

我想通知任何传入和传出语音呼叫的代码。我需要掌握以下所有内容:

  • 如果是来电或去电
  • 拨打的号码或来电显示的电话号码
  • 通话时长,或者如果错过了通话

如果电话号码与电话的联系人列表中的某人匹配,如果我可以获得更多的联系信息(特别是联系人姓名),那也将非常有帮助。

通话结束后,我需要我的代码来获取这些信息。也许我只是没有在寻找正确的术语,但是我很难找到如何实现此目标的任何示例。

如果有人可以提供一个实现此目的的代码示例,以及清单文件中所需的权限和任何类型的广播接收器设置,那将是非常不错的。

java android android-manifest

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

Ruby常量是什么意思?

Ruby常量究竟意味着什么?以下代码未显示任何"常量"属性.警告就在那里,但我仍然要改变A指的是什么.

A = 1
puts A # => 1
A = 2  # warning: already initialized constant A
puts A # => 2
Run Code Online (Sandbox Code Playgroud)

或者Ruby常量只是一个没有任何执行的指示?

ruby constants

5
推荐指数
2
解决办法
3272
查看次数

将成员函数直接链接到标头中声明的C方法

我可以用某种方式链接这样的成员函数吗?将方法重新声明为成员并让它调用Mmsystem.h方法而不必包装它?

#include <windows.h>
#include <Mmsystem.h>

  namespace SoundLib {

 public class CWave
 {
 public:
  // WaveIn call
  external UINT waveOutGetNumDevs(VOID);
 };

}
Run Code Online (Sandbox Code Playgroud)

c++ winapi

0
推荐指数
1
解决办法
215
查看次数

关闭CKEditor 3.0中的封闭<p>标记

是否有可能在CKEditor 3.x中关闭<p> </ p>中所有书面内容的自动封闭?

我试过了

  CKEDITOR.config.enterMode = CKEDITOR.ENTER_BR;
Run Code Online (Sandbox Code Playgroud)

但这只是将内联换行符更改为<br />,同时保留封闭段落.

目前编写"Test"会产生此输出

<p>
    Test</p>
Run Code Online (Sandbox Code Playgroud)

但我希望它简单

Test
Run Code Online (Sandbox Code Playgroud)

是否有一个配置属性或另一个内联编辑器更适合这个?

html tags paragraph ckeditor

61
推荐指数
5
解决办法
10万
查看次数

哪个JSON库用于iPhone上的数据

似乎至少有三个不同的库用于从HTTP请求中提取JSON数据.

我有什么理由选择其中一个或者所有这些都是相同的,速度和最小的bugginess?

我正在处理的数据可能会有一些半复杂的JSON字符串.

iphone json objective-c

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

Google等全文搜索

我想在我的离线(android)应用程序中实现全文搜索,以搜索用户生成的笔记列表.

我希望它表现得像谷歌一样(因为大多数人已经习惯向谷歌查询)

我最初的要求是:

  • 快速:像Google或尽可能快,拥有100000个文档,每个文档200字.
  • 搜索两个单词应该只返回包含两个单词的文档(不只是一个单词)(除非使用OR运算符)
  • 不区分大小写(又名:规范化):如果我有'Hello'这个词并且我搜索'hello'它应该匹配.
  • 变音符号不敏感:如果我有'así'这个词,搜索'asi'应该匹配.在西班牙语中,许多人不正确地要么不提出变音标记,要么无法正确地放置它们.
  • 停止消除词:为了没有像'和'这样没有意义的无意义的词,''或'for'根本不应该被索引.
  • 字典替换(又名:词干):类似的词应该被索引为一个.例如,"饥饿"和"饥饿"的实例应该用"饥饿"代替.
  • 短语搜索:如果我有"Hello world!"文本 搜索''world hello''不应该匹配它,但搜索''hello world''应匹配.
  • 如果未指定字段(不仅仅是默认字段),则搜索所有字段(在多字段文档中)
  • 在键入时自动完成搜索结果以提供热门搜索.(就像Google Suggest一样)

我如何配置全文搜索引擎以尽可能多地表现为Google?

(我最感兴趣的是开源,Java,尤其是Lucene)

java lucene full-text-search

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

Magento - 如何在我的帐户导航中添加/删除链接?

我正在尝试删除帐户导航中的链接.我查看了customer/account/navigation.phtml模板.该模板通过$ this-> getLinks()获取链接.如何编辑getLinks()方法以便删除一些链接?

magento

30
推荐指数
6
解决办法
12万
查看次数

内存效率与处理器效率

在一般使用中,我应该打赌内存效率还是处理器效率?

最后,我知道必须根据软件/硬件规格.但我认为没有边界就有一个普遍的规则.

例01(内存效率):

int n=0;   
if(n < getRndNumber())
    n = getRndNumber();
Run Code Online (Sandbox Code Playgroud)

例02(处理器效率):

int n=0, aux=0;
aux = getRndNumber();
if(n < aux)
    n = aux;
Run Code Online (Sandbox Code Playgroud)

它们只是简单的例子并写下来以表明我的意思.更好的例子将受到欢迎.

提前致谢.

memory process

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

我将IDENTITY_INSERT设置为ON,但是我得到一个SqlException,表示它已关闭

我试图从文本文件中获取数千张发票(和其他东西)并将它们插入SQL Server 2008.我写了一个小控制台应用程序来执行此操作并使用LINQ to SQL.在我插入所有现有发票之后,我希望它Invoice_ID是一个标识列并自动增加,所以我将它设计为:

CREATE TABLE [dbo].[Invoice]
(
 [Invoice_ID] int IDENTITY(1,1) NOT NULL PRIMARY KEY, 
    /* Other fields elided */
)
Run Code Online (Sandbox Code Playgroud)

在我开始插入发票之前,我调用包含以下行的存储过程:

SET IDENTITY_INSERT [dbo].[Invoice] ON;
/* Other lines for setup elided */
Run Code Online (Sandbox Code Playgroud)

在我提交更改后,我使用以下行调用另一个存储过程:

SET IDENTITY_INSERT [dbo].[Invoice] OFF;
/* Other lines for clean up elided */
Run Code Online (Sandbox Code Playgroud)

当我尝试插入发票并提交更改时,我收到以下异常:

SQLException:当IDENTITY_INSERT设置为OFF时,无法在表'Invoice'中为identity列插入显式值.

我运行SQL事件探查器,我可以看到它确实设置IDENTITY_INSERTON尝试执行插入之前.我不认为它被设置在OFF任何地方.我是SQL Profiler的新手,所以也许我可以启用一个事件,它将为我提供更多信息来尝试和调试它.有任何想法吗?

我已经尝试调整LINQ to SQL使用的.dbml文件中的值.我将InvoiceAuto Generated Value设置为"False",Auto-Sync设置为"Never",Server Data Type设置为"Int NOT NULL".通常我会将它们分别设置为"True","On Insert"和"Int NOT NULL IDENTITY",但是当我这样做时,我可以看到SQL …

.net c# identity identity-insert linq-to-sql

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