社区
C#
帖子详情
C#执行问题
wangbo1204
2008-09-18 04:58:31
请问:
1,C#是由系统解释执行的吗 如windows
2,看看我的个人理解 请帮忙改正:
C#源代码是由系统(即windows)解释执行的 当执行C#源代码的时候 系统会监视整个的运行过程 当用户点击m_clearButton按钮时 系统检测到鼠标点击了m_clearButton按钮 系统会产生一个Click事件对象 然后系统将访问执行事件处理程序 并将事件源对象m_clearButton和Click事件对象传递给事件处理程序
谢谢
...全文
87
7
打赏
收藏
C#执行问题
请问: 1,C#是由系统解释执行的吗 如windows 2,看看我的个人理解 请帮忙改正: C#源代码是由系统(即windows)解释执行的 当执行C#源代码的时候 系统会监视整个的运行过程 当用户点击m_clearButton按钮时 系统检测到鼠标点击了m_clearButton按钮 系统会产生一个Click事件对象 然后系统将访问执行事件处理程序 并将事件源对象m_clearButton和Click事件对象传递给事件处理程序 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ProjectDD
2008-09-18
打赏
举报
回复
NET平台的 有个运行时,就是常住windows的进程吧应该是
运行时,解释高效机器码:MSIL(MS中间语言:来源于所有NET平台支持的语言,C#,VB等)
应用程序类型,有winform webform
winform,由框架驱动"消息循环" 你可以订阅"系统事件"
打开一个什么都不做的窗口时,已经由NET框架启动了windows消息循环,只是这些消息循环
没有响应,如果你订阅"系统事件"例如 Form.Load 或Button.Click等,那么就等于为某些
你所指定的消息提供了,你所定义的响应.
"系统事件"依据window所设定的很多属性的变化,比如窗口尺寸,按钮按下,等这些都对应的是
系统所监控的属性,--消息,这些消息变化会调用事件这种回调,如果实现了事件也就响应了
消息.
liang4571231
2008-09-18
打赏
举报
回复
一个C#程序执行时的步骤。整个过程是这样的:
1) 由C#编译器将源代码编译为中间语言
2) 装入托管代码,这包括解决内存中的名字、表层类(laying out classes ),并且创建JIT编译所必需的存根。通过执行经常性校验,包括加强一些访问规则,类装载器同样也增强了安全性
3) 用JITer将 IL转换成原始代码
4) 装入元数据、校验类型安全和方法的完整性
5) 垃圾收集(GC)和异常处理
6) 描绘和查错服务
7) 管理线程和上下文以及远程管理。
酒浪子
2008-09-18
打赏
举报
回复
编译 CLR
C#------>微软件中间语言(MSIL)-------------->平台专用代码
JIT(即时编译器)
jiguixin
2008-09-18
打赏
举报
回复
[Quote=引用 3 楼 zzultc 的回复:]
编译时 JIT
C#代码-------->MSIL-------->机器码
[/Quote]
顶
zzultc
2008-09-18
打赏
举报
回复
楼主先搞清楚windows下程序是怎么运行的,再说.net下的情况吧!
.net只不过是对API的又一层封装。
编译时 JIT
C#代码-------->MSIL-------->机器码
你说的窗口和按钮,这些都有一个HWND,由系统统一管理。
JeffChung
2008-09-18
打赏
举报
回复
1. C#-->IL-->机器码
2. 看看windows消息机制。1楼基本已经解释了
brallow
2008-09-18
打赏
举报
回复
1:你说的解释是什么意思?
如果是指编译与解释中的解释,那么不是。C#是编译执行的。
但从通常的意思上来说,C#代码的执行一般是由CLR“解释"IL代码执行的这没错。
2:C#源代码是由系统(即windows)解释执行的 当执行C#源代码的时候 系统会监视整个的运行过程 当用户点击m_clearButton按钮时 系统检测到鼠标点击了m_clearButton按钮 系统会产生一个Click事件对象 然后系统将访问执行事件处理程序 并将事件源对象m_clearButton和Click事件对象传递给事件处理程序
我认为基本上来说你的这个理解不太对。
这句:"系统会监视整个的运行过程 ",在C#代码运行的过程中,不存在你说的这个外部“系统”在监视整个运行过程的可能性。
但是操作系统通过硬件和系统进程可以知道系统发生了什么事情:比如你说的鼠标点击。
当你点击鼠标时,操作系统一开始并不知道这个事情应该通知谁,它根据一个特定的数据结构查找到一个对应的窗口,把这个事件发给这个窗口的“消息队列”,这个窗口的消息队列负责处理这一个点击的消息。你说的事件对象类似于消息。
Visual
C#
_Net 应用精彩50例
本书重点讲述了
C#
语言的基础知识及使用Visual...在讲解时,分别从实例说明、实现步骤、
执行
结果、关键代码及说明等方面进行分析,从而使读者学习这些实例后,可以熟练掌握使用
C#
语言开发各种类型应用程序的技巧与方法。
C#
执行
CMD命令
C#
执行
CMD命令
c#
动态
执行
脚本的3种方式
例如,IronPython是一种用于.NET平台的Python解释器,可以与
C#
代码无缝集成,可以方便地使用它来
执行
Python脚本。...动态
执行
脚本可以实现对于软件的动态热更新,但需要注意脚本的安全性和性能
问题
。
C#
执行
Cmd 命令
当您需要自动
执行
需要命令行工具或实用程序的任务时,此方法非常有用。方法来等待命令完成。命令的输出被打印到控制台。以在新控制台窗口中运行该命令。属性以捕获命令的输出。以防止显示控制台窗口。通过使用
C#
中...
C#
执行
Js脚本方法
C#
运行JS运行Js脚本方法一运行js脚本方法二1 . 新建文本JSCaller.js2. 打开.net的命令行窗口。运行jsc /t:library d:\JSCaller .js 得到JSCaller.dll3.... ///
执行
JS /// this.ExecuteScript("get('{0}'
C#
110,534
社区成员
642,575
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章