Akka2使用探索3(Duration 和 Deadline)

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

akka提供了两个关于时长的数据类型:Duration 和 Deadline,比如5秒钟这种含义。

Duration.Inf表示无限,Duration.MinusInf表示负无限

Deadline, 表示一个绝对的时间点,意义是最终期限,并且支持通过计算当前时间到deadline之间的差距来生成Duration

下面是使用方法:

 

import akka.util.Duration
import java.util.concurrent.TimeUnit
import akka.util.FiniteDuration
import akka.util.Deadline
import akka.dispatch.Await
import akka.dispatch.Futures
import java.util.concurrent.Callable
import akka.dispatch.Future
import akka.actor.ActorSystem

class DurationTest extends GroovyTestCase {
    def testDurationUse() {
        println new FiniteDuration(5, TimeUnit.SECONDS)
        println Duration.create(5d, TimeUnit.SECONDS)
        println Duration.create(5, "second")
        println Duration.create(5L, "second")
        println()
        println Duration.parse("5second")
        println Duration.parse("5 second")
        println Duration.parse("5 seconds")
        println Duration.parse("5seconds")
        println()
        println Duration.Inf()
        println Duration.Zero()
        println Duration.MinusInf()

    }

    def testDeadline() {
        Deadline d = Duration.create(5, "second").fromNow()
        def future = Futures.future(new Callable<String>() {
            String call() {
                println "start...";
                sleep(1000 * 60);
                println("end...");
                return "sd";
            }
        }, ActorSystem.create("test").dispatcher())

        String result = (String) Await.result(Futures.future({println "start..."; sleep(1000 * 60); println("end..."); return "sd";} as Callable, ActorSystem.create("test").dispatcher()), d.timeLeft())
        sleep(1000 * 60)
    }

    def testDeadline2() {
        Future<String> f = Futures.future(new Callable<String>() {
            public String call() {
                return "Hello" + "World";
            }
        }, ActorSystem.create("test").dispatcher());
        String result = (String) Await.result(f, Duration.create(5, "second"));
        println result
    }
}

转载于:https://my.oschina.net/xiefeifeihu/blog/81112

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/302165.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#垃圾回收机制(GC)

GC的前世与今生虽然本文是以.net作为目标来讲述GC&#xff0c;但是GC的概念并非才诞生不久。早在1958年&#xff0c;由鼎鼎大名的图林奖得主John McCarthy所实现的Lisp语言就已经提供了GC的功能&#xff0c;这是GC的第一次出现。Lisp的程序员认为内存管理太重要了&#xff0c;所…

收藏 | EXCEL的36个逆天功能,动画教程

全世界只有3.14 % 的人关注了数据与算法之美1、添加文字下面线条的2种方法2、设置列宽的3种方法3、以cm为单位设置行高跟列宽4、输入0开头数字的2种方法5、快速输入当天日期与时间6、如何输入分数&#xff1f;7、生成序列的3种方法8、快速录入相同内容9、隐藏没有数据区域10、填…

读《中台架构与实现》

最早是在极客时间知道欧创新老师的&#xff0c;我也是他的课程《DDD实战课》的订阅者&#xff0c;后来欧老师基于这门课程做更多的实践与思考&#xff0c;完成了《中台架构与实现&#xff1a;基于 DDD 和微服务》这本书的写作&#xff0c;最近刚好读完了这本书。中台、微服务、…

fedora17的gnome3桌面美化

使用fedora已经有一段时间了,感觉还可以. 今天配置一下gnome的桌面吧. 首先要安装一款工具,这个可以说很必要了,当然,好多的博客里也都提到过,这就是 gnome-tweak-tool yum install gnome-tweak-tool 之后呢, 就可以打开这个软件,在附件里, 中文名字叫做高级设置,英文名字叫做…

全球高智商俱乐部门萨出品,最强大脑达人推荐,让孩子挑战脑力极限,玩出高智商思维!...

我们经常听到“脑力体操”(Mind Gymnastic)&#xff0c;可能大家都不太懂得是什么。通俗地讲&#xff0c;就是时不时&#xff0c;给大脑来点小体操。可以灵活运用大脑&#xff0c;确保头脑是清醒的。门萨试题作为全球公认的“脑力体操”&#xff0c;它不是数学题&#xff0c;对…

linux关机开机命令详解,Linux关机与重启的命令详解

Linux有如下的关机和重启命令:shutdown, reboot, halt, poweroff&#xff0c;那么它们有什么区别呢&#xff1f;shutdown - 建议使用的命令shutdown是最常用也是最安全的关机和重启命令&#xff0c;它会在关机之前调用fsck检查磁盘&#xff0c;其中-h和-r是最常用的参数&#x…

Microsoft Build 2021大会开始后,Develop Blog一系列更新

.NET BLOG发布.NET 6预览版4https://devblogs.microsoft.com/dotnet/announcing-net-6-preview-4/发布**.NET MAUI**预览版4https://devblogs.microsoft.com/dotnet/announcing-net-maui-preview-4/介绍运行时.NET热重载时编辑代码的体验https://devblogs.microsoft.com/dotnet…

数学无用论??我们欠孩子真正的数学阅读

说到数学&#xff0c;我想起了13年一场轰动行业各界的“数学无用论”&#xff01;那时微博上有个话题叫做#让数学滚出高考#&#xff0c;超过7成网友都表示支持&#xff0c;这可怕的比例就能说明在中国由于数学差导致命运被洗牌的真不在少数……甚至大部分人举起了“数学无用论”…

一些积累

为什么80%的码农都做不了架构师&#xff1f;>>> 查看某文件属于哪个RPM包。 我一直使用的是ubuntu&#xff0c;用的是apt-get所以。。&#xff0c;答案是-qf&#xff0c;没有环境没法实验&#xff0c;也不想装rpm在我的ubuntu里。 run level 这个不同的linux发行版…

数据庞大繁杂,如何精简挖掘?

从数据中抽取信息从信息中挖掘知识随着大数据时代的到来&#xff0c;数据挖掘的重要性越发显著。可谓是兵马未至&#xff0c;数据先行。所谓数据挖掘&#xff0c;一般是指从大型数据库中将隐藏的预测信息抽取出来的过程&#xff0c;而更为精确的解释就是“从数据中挖掘知识”。…

Magicodes.IE之总体教程

简介Magicodes.IE&#xff0c;导入导出通用库&#xff0c;支持Dto导入导出、模板导出、花式导出以及动态导出&#xff0c;支持Excel、Csv、Word、Pdf和Html。内容合集Magicodes.IE.AspNetCore之一行代码多格式导出Excel模板导出之动态导出 Magicodes.IE Excel合并行数据导入教程…

关于VC6.0 MSDEV.EXE-应用程序错误0x5003eaed指令引用的0x000...

2019独角兽企业重金招聘Python工程师标准>>> 错误现象&#xff1a;VC6.0中&#xff0c;点击add source file或是add header file,add file to project等菜单&#xff0c;将会出现MSDEV.EXE-应用程序错误&#xff0c;并引起VC6.0的自动关闭。 错误原因&#xff1a;可…

pixelbook安装linux系统,谷歌Pixelbook可以运行Fuchsia操作系统 正测试

【PConline资讯】早在2016年就有消息称&#xff0c;谷歌正在开发一款独立于Android和Chrome OS之外的操作系统 “Fuchsia”。尽管迄今为止谷歌根本没有详细说明这个操作系统&#xff0c;但最新文档指出&#xff0c;谷歌Pixelbook 笔记本可以运行Fuchsia系统。据报道&#xff0c…

AlphaGo Zero又上《Science》封面!谷歌的人工智能又干翻人类了!

全世界只有3.14 % 的人关注了数据与算法之美卢sir在回顾2018年的时候&#xff0c;发现居然遗漏了一个“知识点”——在2018年的最后一个月&#xff0c; AlphaGo Zero登上了世界顶级学术期刊《科学》杂志的封面。Google设计了AlphaGo&#xff08;围棋机器人&#xff09;的事早已…

【译】.NET 6 Preview 4 Released

.NET 6 Preview 4 Released我们很高兴地发布 .NET 6 Preview 4。现在&#xff0c;我们到 .NET 6 正式发布尚有一半。现在是再次浏览.NET 6 全部内容的好时机&#xff0c;就像第一篇预览文章一样。许多功能处于最终形式&#xff0c;而其他功能也将很快发布&#xff0c;因为已经为…

在终端(Terminal)中用颜色显示不同类型文件

2019独角兽企业重金招聘Python工程师标准>>> 对于从Unix/Linux平台转到Mac的同学来说&#xff0c;“终端”是经常要使用的一个工具。不过可能有很多人已经发现了&#xff0c;当我们使用ls命令来显示目录内容的时候&#xff0c;“终端”对于目录、可执行文件等特殊类…

马斯克要干翻人工智能,“神经蕾丝”能让每个人都能当钢铁侠

全世界只有3.14 % 的人关注了数据与算法之美爱因斯坦曾说过&#xff0c;“在一个崇高的目标支持下&#xff0c;不停地工作&#xff0c;即使慢&#xff0c;也一定会获得成功。”这不2019年刚到来&#xff0c;“硅谷钢铁侠”马斯克就定好了“小目标”了——“给我10年时间&#x…

都 2021 年了,竟然有人搞大数据时忽略 JSON 而去研究用 C# 把 XML 转换为 XML 的技术...

在大数据项目开发过程中&#xff0c;ETL&#xff08;Extract-Transform-Load&#xff09;是必不可少。即便目前 JSON 非常流行&#xff0c;开发人员也有必定会有对远古系统的挑战&#xff0c;而 XML 格式的数据源作为经典存在浑身上下散发着浓浓 old money 的味道。因为有 Newt…

新一代来袭︱不只是舒适,简直是享受,Google公司用的腰靠,到底有什么秘密?...

之前小木推荐“德国MINICUTE人体工学腰垫”受到了大家一致的好评和争相购买。小木为什么推荐这一款原因是&#xff1a;据统计&#xff0c;我国腰椎病患者已经突破2亿人。30~40岁人群中&#xff0c;患有颈腰椎病的占比59.1%&#xff01;而且有着越来越年轻化的趋势&#xff0c;办…

微软放弃IE浏览器 应尽快完成国产化替代

不久前&#xff0c;微软决定在2022年6月15日彻底放弃IE浏览器&#xff0c;全线改用Microsoft Edge。微软官方表示&#xff0c;"我们宣布&#xff0c;Windows 10上的Internet Explorer的未来在Microsoft Edge中&#xff0c;Internet Explorer 11桌面应用程序将于2022年6月1…