自己站网站可以做h5游戏的网站

news/2025/10/4 10:19:03/文章来源:
自己站网站,可以做h5游戏的网站,南昌公众号开发公司,外包公司做的网站一.压榨历史 1.单进程人工切换。纸带机。只能解决简单的数学问题。 2.单道批处理。多进程批处理。多个任务批量执行。解决手动操作时需要人工切换作业导致的系统利用率低的问题 3.多进程并行处理。把程序写在不同的内存位置来回切换。当一个作业在等待I/O处理时#xff0c;…一.压榨历史 1.单进程人工切换。纸带机。只能解决简单的数学问题。 2.单道批处理。多进程批处理。多个任务批量执行。解决手动操作时需要人工切换作业导致的系统利用率低的问题 3.多进程并行处理。把程序写在不同的内存位置来回切换。当一个作业在等待I/O处理时多批处理系统会通过相应调度算法调度另外一个作业让计算机执行 4.多线程。一个程序内部不同任务的来回切换。实现进程中任务的切换又可以避免进程切换内存地址空间(将计算机实际调度的单元转到线程)。 5.纤程/协程与管程 二.相关含义介绍 什么是程序什么是进程什么是进程什么是纤程/协程、管程 1.程序--抽象概念 操作系统可以执行的一个计算机文件。是一组计算机能识别和执行的指令序列。如QQ.exe 2.进程--静态概念 进程是程序计算机(内存)中的一次运行活动。更通俗一点来说进程是程序的实例化(类似于程序是class进程是class的对象)。 进程是系统进行资源分配的基本单位进程是线程的容器。 3.线程--动态概念 一条线程指的是进程中一个单一顺序的执行路线也可以说是执行流、控制流。即进程中的实际运行单位。 资源调度的基本单位。 4.线程上下文 线程上下文是指某一时间点 CPU 寄存器和程序计数器的内容。 4.1.使用场景 上下文切换 (context switch) 。即任务切换, 或者CPU寄存器切换。 当多任务内核决定运行另外的任务时, 它保存正在运行任务的当前状态, 也就是CPU寄存器中的全部内容。这些内容被保存在任务自己的堆栈中, 入栈工作完成后就把下一个将要运行的任务的当前状况从该任务的栈中重新装入CPU寄存器, 并开始下一个任务的运行, 这一过程就是context switch。 4.2.上下文切换带来的问题 程序执行效率与线程并发数从正相关变为负相关 三.思考问题 1.单核的CPU设定多线程是否有意义 其实个人的观点是需要分析多线程的本质--是对cpu性能的压榨。 那么如果说单线程已经达到非常好的cpu利用率则使用多线程意义不是太大。这种作业就称为cpu密集型性能瓶颈是CPU运算。 相对的将性能瓶颈是IO网络通信、硬盘读写、阻塞等待等的作业称为io密集型。因为这种作业会造成cpu空闲而使用多线程可显著减少此情况。 2.工作线程数是不是设置得越大越好 a.先看一个示例 package com.pavin.thread; ​ import java.text.DecimalFormat; import java.util.Random; import java.util.concurrent.CountDownLatch; ​ public class multiThread_01 { ​private static double[] nums new double[1_0000_0000];private static Random r new Random();private static DecimalFormat df new DecimalFormat(0.00);static {for (int j 0; j nums.length; j) {nums[j] r.nextDouble();}} ​private static void singleThread() {long start System.currentTimeMillis(); ​double result 0.0;for (int j 0; j nums.length; j) {result nums[j];} ​long end System.currentTimeMillis();System.out.println(1   singleThread: cost (end-start) ms result: df.format(result));} ​static double result1 0.0, result2 0.0, result3 0.0;private static void twoThreads() throws InterruptedException { ​Thread t1 new Thread(() - {for (int j 0; j nums.length / 2; j) {result1 nums[j];}}); ​Thread t2 new Thread(() - {for (int j nums.length / 2; j nums.length; j) {result2 nums[j];}}); ​long start System.currentTimeMillis();t1.start();t2.start();t1.join();t2.join(); ​result3 result1 result2;long end System.currentTimeMillis();System.out.println(2   Threads: cost (end-start) ms result: df.format(result3));} ​private static void multiThreads(int threadCount) throws InterruptedException { ​Thread[] threads new Thread[threadCount];double[] results new double[threadCount];final int segmentCount nums.length / threadCount;CountDownLatch latch new CountDownLatch(threadCount); ​for (int i 0; i threadCount; i) {int m i; ​threads[i] new Thread(() - {for (int j m * segmentCount; j (m1) * segmentCount j nums.length; j) {results[m] nums[j];}}); ​latch.countDown();} ​double result 0.0;long start System.currentTimeMillis();for (Thread t : threads) {t.start();} ​latch.await();for (double v : results) {result v;} ​long end System.currentTimeMillis();System.out.println(threadCount Threads: cost (end-start) ms result: df.format(result));} ​public static void main(String[] args) throws InterruptedException {singleThread();twoThreads(); ​multiThreads(10000);} } 输出结果 1    singleThread: cost 134ms result: 49997084.08 2    Threads: cost 78ms result: 49997084.08 10000 Threads: cost 1012ms result: 49997084.08 由此可见使用两个线程时明显比一个线程更快但是使用10000个线程时非常慢。所以线程并不是越大越好。 b.造成效率下降的原因 见线程上下文 3.工作线程数线程池中的线程数量设置为多少合适 公式压测 a.公式 CPU密集型理论上线程的数量CPU核数最合适。 不过实际中一般会设为CPU核数1。此时当线程因为偶尔的内存页失效或其他原因导致阻塞时这个额外的线程可以顶上从而保证CPU的利用率 IO密集型 线程数 CPU核心数 * 目标CPU利用率 *1平均等待时间/平均工作时间 b.实际中的问题 i.环境开销 比如一个普通的SpringBoot 为基础的业务系统默认Tomcat容器HikariCP连接池G1回收器。 Tomcat有自己的线程池HikariCP也有自己的后台线程JVM也有一些编译的线程连G1都有自己的后台线程。这些线程也是运行在当前进程、当前主机上的也会占用CPU的资源。 ii.测算平均等待时间、“平均工作时间” 方法1通过日志和统计的方式得出。 方法2第三方工具profiler/Jprofiler c.实际策略 一般情况下内部业务系统相对于性能更注重稳定好用、符合需求。实际生产推荐的线程数CPU核心数1

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

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

相关文章

美工网站设计门户网站创新的方式有

利用两个管道进行进程间双向通信在第一篇练习已经大致作出说明,下面将进行一个更为综合的练习 首先看题目: 设有二元函数f(x,y) f(x) f(y) 其中: f(x) f(x-1) * x (x >1) f(x)1 (x1) f(y) f(y-1) f(y-2) (y> 2) f(y)1 (y1,2) 请编…

郑州机械网站建设导航滑动整屏网站

一、为什么要进行数据归一化 定义:把所有数据的特征都归到 [0,1] 之间 或 均值0方差1 的过程。原则:样本的所有特征,在特征空间中,对样本的距离产生的影响是同级的;问题:特征数字化后,由于取值…

电脑科技网站模板外链工具在线

1.Java语言的特点? 1.一面向对象(封装,继承,多态);2.平台无关性( Java 虚拟机实现平台无关性);(类是一种定义对象的蓝图或模板)3.支持多线程( C 语言没有内置…

技术Leader的1-3-5沟通法则:向上管理的艺术 - 指南

技术Leader的1-3-5沟通法则:向上管理的艺术 - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas"…

【Phar反序列化】 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

永年网站建设创建全国文明城市总结

1 rtsp 接入 我们使用unity UE 等三维渲染引擎中使用c编写插件来接入rtsp 视频。同时做融合的时候,和背景的三维颜色要一致,这就要使用视频融合修正技术。包括亮度,对比度,饱和度的修正。在单纯颜色上的修正可以简单使用rgb->…

楚雄自助建站系统地税城市维护建设税网站是什么

Azure 提供了几种托管网站的方式:Azure 应用服务、虚拟机、Service Fabric 和云服务。 本文可帮助你了解这几种方式,并针对 Web 应用程序做出正确的选择。 Azure 应用服务是大多数 Web 应用的最佳选择。 部署和管理都已集成到平台,站点可以快…

济南php网站开发使用element做的网站

Mars 是一个并行和分布式 Python 框架,能轻松把单机大家耳熟能详的的 numpy、pandas、scikit-learn 等库,以及 Python 函数利用多核或者多机加速。这其中,并行和分布式 Python 函数主要利用 Mars Remote API。 启动 Mars 分布式环境可以参考…

柳市网站优化昌江县住房和城乡建设局网站

网上排出此错误方法的很多,但是 都不简洁,找不到根本原因 主要排查两点: 1.代码中jdbc链接的编码规则 urljdbc:mysql://localhost:3306/title?useUnicodetrue&characterEncodingutf8 将characterEncoding设置为utf8 2.设置mysq…

网站备案中是什么意思新能源汽车车型及报价

给出两个正整数&#xff0c;判断他们的大小。 输入格式&#xff1a; 两个正整数。 输出格式&#xff1a; 若前者大&#xff0c;输出>&#xff1b; 若后者大&#xff0c;输出<&#xff1b; 若一样大&#xff0c;输出。 输入&#xff1a; 1412894619244619891 23762842…

完整教程:AI时代如何高效学习Python:从零基础到项目实战de封神之路(2025升级版)

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

cannot resolve method add in T 及 T 泛型类型生成Excel文件,区别是数据Model不同

cannot resolve method add in T 及 T 泛型类型生成Excel文件,区别是数据Model不同cannot resolve method add in T 及 T 泛型类型生成Excel文件,区别是数据Model不同 1.通过继承父类来解决public void largeDataCre…

网站开发专员招聘企业网站需要多大带宽

1.继承派生的区别 继承&#xff1a;子继父业&#xff0c;就是子类完全继承父类的全部内容 派生&#xff1a;子类在父类的基础上发展 2.继承方式 1.public继承为原样继承 2.protected继承会把public继承改为protect继承 3.private继承会把public&#xff0c;protected继承改为pr…

备案中网站名称网站建设创客

*本文系SDNLAB编译自瞻博网络技术专家兼高级工程总监Sharada Yeluri领英 在路由器和交换机中&#xff0c;缓冲区至关重要&#xff0c;可以防止网络拥塞期间的数据丢失。缓冲区到底要多大&#xff1f;这个问题在学术界和工业界一直备受争议。本文探讨了高端路由器中数据包缓冲的…

MySQL慢查询深度解析:从诊断到优化的完整指南 - 实践

MySQL慢查询深度解析:从诊断到优化的完整指南 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&qu…

手写MyBatis第88弹:从XML配置到可执行SQL的完整旅程 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

测试环境elasticSearch数据泄露排查

测试环境elasticSearch数据泄露排查测试环境elasticSearch数据泄露排查 es中同一条会员 或者车辆或者交易 主要刷新一次 就会有一条被删除的文档所以几万测试数据 检查那边看到了几百万被删除是记录 以为几百万数据泄露…

深入解析:Spring boot中 限制 Mybatis SQL日志的大字段输出

深入解析:Spring boot中 限制 Mybatis SQL日志的大字段输出pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Conso…

郑州网站建设代运营制作网页动画的软件

这几天开始做毕业设计了&#xff0c;MPEG2解码的MIPS实现&#xff0c;代码啥的网上一大堆&#xff0c;最大的困难也许不是理解代码&#xff0c;而是搭建环境&#xff0c;也就是搭建mips-linux-gcc交叉编译的环境。网上铺天盖地的都是arm-linux-gcc工具链的教程&#xff0c;唯独…

网站制作网络推广方案佛山做外贸网站平台

本文我们将分享数学启蒙学什么&#xff1f;用几个字简单的归纳为集合、数、量、形、时间、空间。我们接下来会讲感知集合和分类&#xff0c;数概念&#xff0c;量的概念&#xff0c;形状包含平面图形和立体图形&#xff0c;空间方位和时间的初步概念。 家长们可以发现幼儿数学启…