Runtime是什么?
在看 RPC 的概念模型与实现解析 的时候,看到图片上有Runtime,又想到见过很多Runtime之类的东西,所以就想弄明白这到底是个什么东西。
(因为是程序名,所以根本没想到代码的“编译-运行”~)
于是上网求助,得到很多热心网友的回复:
字面意思,运行时
目前天天用application server runtime environment(如,Tomcat)
相对的还有design time, build time...
运行时 是相当于 编译时来说的
有些事情是在编译时就能决定的
有些决定在运行时候才知道
编译时候就能决定的东西通常显得看起来没技术含量
比如说 int i=0;编译时候就知道i=0
运行时才能决定的东西显得比较高大上点
所以起名字没事就加个runtime显得比格高一点。
这两个词应该是来源自编译器解释器相关的用语
java运行时决定的特性比如说多态,反射之类的
一个决策放到运行时才决定灵活性会高很多,实现难度也高很多 一个系统叫xxxruntime就是声称自己设计的比较牛,比较灵活可定制
几乎是一个可编程的环境,几乎是一个虚拟机
runtime对应于compile time来讲的。
比如hello world里javac这步是 compile 实际生产环境,会有打包发布到生产环境里面,要改代码就要重新编译打包发布,如果pipleline做得不好,这几步可以很冗长。 你可以看下spring的Dependency Injection. 里面就是可以通过改配置文件产生不同的实现,不需要重新编译。这个就是runtime
我来给你解释下吧。
这个runtime是这个架构图里面一个组件的命名,你要问作者为什么把这部分程序叫做叫做runtime。一个组件的命名,一般是根据他的功能和职责命名的。一个系统中有组件命名为runtime那么必然有组件负责designtime。你贴的这个图是一个RPC系统。一般使用方法是需要定义IDL,然后使用一些系统提供的工具生成stub之类的东西。然后程序运行起来之后真正进行远程调用时,有个组件要负责,序列化反序列化,网络通讯这些功能。在上面这个过程中,生成stub的系统就是design time组件。而负责传输数据,序列化反序列化的组件就可以命名为runtime组件。
其他系统也类似,一个数据库系统,编辑sql的编辑器就是design time, 响应sql, 执行操作的部分就是runtime。
一个工作流系统,定义流程模型的部分可以认为是design time, 解释执行流程的部分就是runtime。
一个游戏系统,地图编辑器之类的组件就是design time, 把游戏跑起来的部分就是runtime。
总之,系统跑起来,负责干活那部分组件就是runtime。
最后一个答复异常清晰!
再次谢过诸位大神~
Runtime是什么?的更多相关文章
- runtime梳理。
一.runtime简介 RunTime简称运行时.OC就是运行时机制,也就是在运行时候的一些机制,其中最主要的是消息机制. 对于C语言,函数的调用在编译的时候会决定调用哪个函数. 对于OC的函数,属于 ...
- myeclipse 无法启动 java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).
把myeclipse10 按照目录完整拷贝到了另外一台电脑, 另外的目录 原安装目录 D\:\soft\i\myeclipse10 新安装目录 E\:\soft\myeclipse10 双击启动失败, ...
- Objective-C runtime初识
Objective-C Runtime Describes the macOS Objective-C runtime library support functions and data struc ...
- Objective-C runtime的常见应用
用Objective-C等面向对象语言编程时,"对象"(object)就是"基本构造单元"(building block).开发者可以通过对象来存储并传递数据. ...
- Runtime应用防止按钮连续点击 (转)
好久之前就看到过使用Runtime解决按钮的连续点击的问题,一直觉得没啥好记录的.刚好今天旁边同时碰到这个问题,看他们好捉急而且好像很难处理,于是我先自己看看… 前面自己也学习了很多Runtime的东 ...
- iOS开发-- 通过runtime kvc 移除导航栏下方的阴影效果线条
网上查了很多, 都是重新绘制, 感觉有点蠢, 恰巧工作有会闲, 就简单的通过runtime遍历了下属性找寻了下私有类和方法, 这里直接贴方法, 找寻过程也发出来, 能看懂的直接就能看懂, 看不太明白的 ...
- VS2015 出现 .NETSystem.Runtime.Remoting.RemotingException: TCP 错误
错误内容: 界面显示内容为: .NET�������������System.Runtime.Remoting.RemotingException: TCP 淇¢亾鍗忚鍐茬獊: 搴斾负鎶ュご銆� 鍦 ...
- DirectX runtime
DirectX 9.0 runtime etc https://www.microsoft.com/en-us/download/details.aspx?id=7087 DirectX 11 run ...
- runtime
7.runtime实现的机制是什么,怎么用,一般用于干嘛. 你还能记得你所使用的相关的头文件或者某些方法的名称吗? 运行时机制,runtime库里面包含了跟类.成员变量.方法相关的API,比如获取类里 ...
- runtime 第四部分method swizzling
接上一篇 http://www.cnblogs.com/ddavidXu/p/5924597.html 转载来源http://www.jianshu.com/p/6b905584f536 http:/ ...
随机推荐
- VS2010中遇到_WIN32_WINNT not defined
VS2010中编程时遇到这个问题 _WIN32_WINNT not defined. Defaulting to _WIN32_WINNT_MAXVER (see WinSDKVer.h) 解决办法: ...
- 【驱动笔记11】使用DeviceIoControl通信
文章作者:grayfox作者主页:http://nokyo.blogbus.com原始出处:http://www.blogbus.com/nokyo-logs/34018521.html 在我昨日发布 ...
- 关于FSMC地址线的理解
http://www.openedv.com/thread-33759-1-1.html (出处: OpenEdv-开源电子网)
- 获取Android运行apk的packagename 和activityname
自动化测试中经常遇到这个问题,关于这个题目,方法众多,咱的目的是找个比较简单靠谱的: 方法一: 先进入cmd窗口,adb shell 后: cd /data/data ls 可以看到包名了吧,缺点很明 ...
- 数据库分享一: MySQL的Innodb缓存相关优化
无论是对于哪一种数据库来说,缓存技术都是提高数据库性能的关键技术,物理磁盘的访问速度永 远都会与内存的访问速度永远都不是一个数量级的.通过缓存技术无论是在读还是写方面都可以大大提 高数据库整体性能. ...
- cscope使用技巧
1.执着cscope.files文件,对源码目前全文件搜索 find `pwd` -type f > cscope.files `pwd`生成当前目录的绝对路径,这样在cs命令里面就可以不用写那 ...
- e到底是什么?
e到底是什么? 今天看到一个下面这么一个简单的求极限问题- 一时恍惚了,为什么结果是e^m. 这个e是什么呢? 然后就百度了下,发现不少文章介绍这个e. 有几篇写得很赞 - An Intuitive ...
- 【Android】20.2 视频播放
分类:C#.Android.VS2015: 创建日期:2016-03-11 一.简介 本节例子和上一节的音频播放例子相似,也是最简单的示例,比如并没有考虑视频播放过程中电话打入的情况,也没有考虑复杂的 ...
- nc 传输文件
在接收服务器上执行:(123.57.36.227) [root@ ~]# cat /tmp/user.txt hello world [root@ ~]# nc -v -l -p >/tmp/u ...
- flink watermark介绍
转发请注明原创地址 http://www.cnblogs.com/dongxiao-yang/p/7610412.html 一 概念 watermark是flink为了处理eventTime窗口计算提 ...