当前位置: 首页 > news >正文

永嘉县住房建设局网站成立公司注册资本什么意思

永嘉县住房建设局网站,成立公司注册资本什么意思,周到的商城网站建设,万户网站解释性 python是动态类型解释性语言#xff0c;不管使用哪种解释器 因为“解释性语言”这个概念更多地是指代码的执行方式#xff0c;而不是编译方式。在解释性语言中#xff0c;代码在执行时会一行一行地解释并执行#xff0c;而不是预先编译为机器语言。而即使使用了PyP…解释性 python是动态类型解释性语言不管使用哪种解释器 因为“解释性语言”这个概念更多地是指代码的执行方式而不是编译方式。在解释性语言中代码在执行时会一行一行地解释并执行而不是预先编译为机器语言。而即使使用了PyPy解释器PyPy使用了JIT即时编译技术它会在代码运行时将代码编译为机器语言。其中的JIT编译技术仍然在运行时进行代码仍然在运行时动态确定类型和解释执行。因此尽管PyPy使用了编译技术加速代码的执行但它仍然是解释性语言 动态性 动态语言python的运行速度为什么比静态语言java慢 在 Java 和 Python cpython解释器中都存在先编译为字节码然后再在解释器或虚拟机中将字节码转换为机器语言的过程。那么为什么 Java 的运行速度会比 Python 快python在运行时动态确定类型和进行解释会比java慢 静态类型的语言比如 CJavaGo需要在声明变量的时候带上类型。而 Python 就不用Python 帮你决定一个变量是什么类型并且可以随意改变。 动态类型为什么慢呢每次检查类型和改变类型开销太大如此动态的类型难以优化 Python 的动态类型和动态内存分配也会对运行速度产生影响。Python 中的对象都是动态创建的这就需要在运行时进行内存分配和回收这会比静态分配更慢。 pypy解释器的大致运行过程 PyPy解释器既是解释性的也是编译性的。 在PyPy解释器中源代码首先会被编译成抽象语法树AST然后被编译成LLVM IRIntermediate Representation中间表示。接着LLVM IR会被传递给JIT编译器生成对应的机器码这些机器码被缓存起来以备下次调用注意这里是在pypy解释器中的过程而只有在运行代码的时候才会去用pypy解释器去解释。这个过程中JIT编译器根据实际情况来选择是否对代码进行即时编译。如果发现某些代码被重复执行(如循环)JIT编译器会对这些代码进行优化并将它们编译成机器码以提高程序性能。如果当 JIT 编译器无法对代码进行优化时PyPy 仍然会使用解释器来执行 Python 代码。 因此PyPy解释器既包含解释器的特点也包含编译器的特点。在运行过程中PyPy解释器会将源代码解释执行同时也会将部分代码编译成机器码以提高程序性能。因此可以说PyPy是一种混合型的解释器/编译器。 GIL 首先GIL锁是python 默认的cpython解释器带的在此解释器下创建多线程是用户级线程且cpython的多线程模型是多对一模型即使你创建再多的多线程也只会被映射到一个内核级线程上内核级线程去排对竞争cpu。 那为什么cpython的多线程模型是多对一模型呢 因为即使是多对多模型python代码创建多个线程用户级线程最终被映射到了多个内核级线程上然后这些内核级线程去排队竞争cpu假设同时竞争到了cpu时间片但是也只有一个内核线程有GIL锁才能调用cpython解释器将python字节码解释成机器码执行而那些没有GIL锁的内核线程即使分配到了cpu时间片会发现没有GIL锁无法调用cpython解释器因此也就无法执行字节码从而又被系统放入到阻塞队列中去等待GIL锁的资源。 即同一时刻只能有一个内核线程获取GIL锁然后被解释器解释执行那么其它的内核线程就会增加操作系统调度和上下文切换的开销而没有实际的性能提升。 那为什么cpython中为什么要有GIL锁的存在 GIL锁的存在是为了保证解释器的线程安全性。因为CPython的解释器内部实现使用了大量的全局变量和共享数据结构如果没有GIL锁的保护多个线程同时访问这些数据结构会导致解释器的崩溃或者产生未定义的行为。通过GIL锁的机制CPython确保了在任意时刻只有一个线程可以执行解释器的字节码从而保证了解释器的线程安全性。 垃圾回收机制 python的垃圾回收机制主要是以引用计数为主标记-清除是为了解决引用计数遗留的循环引用的问题分代回收是用空间换时间的提升回收的效率 1.内存占用由于垃圾回收机制需要维护内存中的所有对象每个对象需要分配单独的空间来统计引用计数这无形中加大的空间的负担并且需要对引用计数进行维护 2.CPU利用率在垃圾回收期间Python解释器需要进行大量的计算和操作这会导致CPU利用率上升从而降低程序的运行速度。 3.垃圾收集时间Python解释器的垃圾回收机制需要花费一定的时间来扫描内存并处理垃圾对象这可能会导致Python程序的运行速度变慢。 4.阻塞垃圾回收机制的阶段会暂停整个应用程序等待标记清除结束后才会恢复应用程序的运行。
http://www.dnsts.com.cn/news/76184.html

相关文章:

  • 更改备案网站名称做网站开发需要的笔记本配置
  • 网站开发流程主要分成什么做网站傻瓜软件
  • 网站开发好做网站好还是做商城好
  • 营销型企业网站建设的步骤装宽带一般多少钱
  • 烟台网站优化望京网站建设公司
  • 个人做商业网站需要什么旅游网站html5代码
  • 二手房网站谁做的更好做垂直网站
  • 淄博 做网站湖北建设银行招标在哪个网站看
  • 建立网站和小程序需要多少钱网站开发视频播放无画面
  • 台州网站制作报价平面设计网站有哪些
  • 网站代码怎么查看网站备案在外地
  • 网站服务器返回状态码404建设一个网站哪家好
  • 上海备案证查询网站查询网站查询长春智联招聘网最新招聘
  • 怎么提升网站的流量吗网站建设与网络编辑心得体会
  • 品牌营销策划ppt宁波怎么优化seo关键词
  • 网站如何被搜索引擎收录广东网页制作网站
  • 网站极简设计自主网站制作
  • 网站导读怎么做关键词seo优化案例
  • 下列关于网站开发当今做网站的流行趋势
  • 苏州企业如何建网站关键词优化设计
  • 莱芜市住房和城乡建设厅网站陕西建设教育培训网
  • 除了dz论坛还能搭建什么网站wordpress 调用数据库
  • 宁波外贸网站制作30张女性人像摄影作品欣赏
  • 制作网站语言济南 网站建设
  • 湖北省建设人力资源网站首页免费首页2空间
  • 昆明网站建设加q.479185700佛山顺德容桂网站制作
  • 河南国基建设集团--官方网站中国上海网站首页
  • 手机网站在线咨询代码新东方考研培训机构官网
  • 新建网站怎么做关键词海报设计平台
  • 帮别人做买家秀的网站wordpress数据控查看密码