Tag: asynchronous

asynchronousnetworking操作从未完成

我有几个asynchronousnetworking操作返回一个可能永远不会完成的任务: UdpClient.ReceiveAsync不接受CancellationToken TcpClient.GetStream返回一个不尊重Stream.ReadAsync上的CancellationToken的NetworkStream (仅在操作开始时检查取消) 两者都等待可能永远不会到来的消息(因为丢包或没有响应)。 这意味着我有从未完成的幻影任务,永远不会运行的延续,并使用套接字保持。 我知道我可以使用TimeoutAfter ,但这只会解决延续问题。 那我该怎么办?

NSURLConnection sendAsynchronousRequest无法从闭包中获取variables

我试图从一个PHP页面使用POST获取简单的文本响应。 我有以下代码: func post(url: String, info: String) -> String { var URL: NSURL = NSURL(string: url)! var request:NSMutableURLRequest = NSMutableURLRequest(URL:URL) var output = "Nothing Returned"; request.HTTPMethod = "POST"; var bodyData = info; request.HTTPBody = bodyData.dataUsingEncoding(NSUTF8StringEncoding); NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()){ response, data, error in output = (NSString(data: data, encoding: NSUTF8StringEncoding))! } return output } 虽然这个代码不会抛出任何错误,但是当我这样打电话给它时: println(post(url, info: […]

暂停/停止并继续启动/恢复Java TimerTask?

我有一个关于Java TimerTask的简单问题。 如何根据一定的条件暂停/恢复两个TimerTask任务? 例如,我有两个在彼此之间运行的定时器。 当第一个定时器的任务内部满足一定的条件时,第一个定时器停止并启动第二个定时器,在第二个定时器的任务内满足一定的条件时也会发生同样的情况。 下面的课程显示了我的意思: public class TimerTest { Timer timer1; Timer timer2; volatile boolean a = false; public TimerTest() { timer1 = new Timer(); timer2 = new Timer(); } public void runStart() { timer1.scheduleAtFixedRate(new Task1(), 0, 1000); } class Task1 extends TimerTask { public void run() { System.out.println("Checking a"); a = SomeClass.getSomeStaticValue(); if […]

如果asynchronous等待不会创build任何其他线程,那么它如何使应用程序响应?

一次又一次,我看到它说,使用async – await不会创build任何额外的线程。 这是没有道理的,因为电脑似乎一次只能做多件事情的唯一方法是 实际上一次做多个事情(并行执行,使用多个处理器) 通过调度任务并在它们之间切换来进行模拟(做一些A,一点B,一点A等等) 所以如果async – await都没有,那么它如何使应用程序响应? 如果只有一个线程,那么调用任何方法意味着在执行其他任何操作之前等待该方法完成,并且该方法中的方法在继续之前必须等待结果,等等。

asynchronous与multithreading – 有没有区别?

asynchronous调用是否总是创build一个新的线程? 两者有什么区别? asynchronous调用是否总是创build或使用新的线程? 维基百科说 : 在计算机编程中,asynchronous事件是独立于主程序stream程发生的事件。 asynchronous操作是在非阻塞scheme中执行的操作,允许主程序stream继续处理。 我知道asynchronous调用可以在单线程上完成吗? 这怎么可能?

asynchronous与非阻塞

asynchronous调用和非阻塞调用有什么区别? 还有阻塞和同步调用(请举例)?

Akka的好用例

我听说过很多关于Akka框架(Java / Scala服务平台)的言论,但是到目前为止还没有看到很多用例的实例。 所以我会有兴趣听到开发人员使用它的事情。 只有一个限制:请不要包括编写聊天服务器的情况。 (为什么?因为这已被过度使用作为很多类似的事情的例子)

只有在asynchronous函数完成执行后才能运行代码

我对Swift和Xcode一般都比较陌生,在找出这个问题时遇到了很多困难。 我正在开发一个利用Parse.com后端服务器的应用程序。 为了不阻塞主线程,每当应用程序从服务器下载任何东西时,它都是在asynchronous线程上asynchronous完成的。 然而,其余的代码继续在主线程上执行,并且它应该从服务器获得的数据还没有下载时崩溃。 我想知道如何在asynchronous函数完成后调用函数来运行,而这必须在单独的文件中完成。 我读封闭可能会有所帮助,但我发现那里的语法非常困难,一个解释将不胜感激。 但是,任何方式都会非常有帮助。 谢谢

一个asynchronousAPI是否应该同步抛出?

我正在编写一个JavaScript函数,它发出一个HTTP请求并返回结果的承诺(但这个问题同样适用于基于callback的实现)。 如果我立即知道提供给函数的参数是无效的,那么函数应该同步throw ,还是应该返回一个被拒绝的promise(或者,如果你愿意的话,用Error实例调用callback函数)? asynchronous函数应该总是以asynchronous的方式运行,特别是对于错误条件,这有多重要? 如果知道程序不是处于asynchronous操作的适当状态,可以throw吗? 例如: function getUserById(userId, cb) { if (userId !== parseInt(userId)) { throw new Error('userId is not valid') } // make async call } // OR… function getUserById(userId, cb) { if (userId !== parseInt(userId)) { return cb(new Error('userId is not valid')) } // make async call }

所有的Node.jscallback函数都是asynchronous的吗?

我正在学习Node.js,我在每个教程中都听到的是“Node is asynchronous and no-blocking!” 我听说在常规的浏览器JavaScript只有某些东西,如AJAX调用可以做asynchronous或非阻塞(使用callback)…这是真的Node.js,或所有的Node.jscallback函数asynchronous/非阻塞?