优先级

Java线程常见面试题

主宰稳场 提交于 2020-04-08 12:30:25
v 多线程实现手段: (1)、继承Thread类 (2)实现Runable接口 (3)使用线程池 v 线程控制在那个包: java.util.concurrent。 (1) 提供了线程的运行、 (2) 线程池的创建、 (3) 线程生命周期的控制 v 线程池 java.util.concurrent.Executors创建线程池的四种方法 (1) newCachedThreadPool创建 非固定数量 , 可缓存的线程池 ,若线程池超过处理需要,可灵活回收空线程,若没有线程可回收,则建新 (2) newFixedThreadPool 固定线程池 ,底层是无界队列,可 控制最大并发数 ,超出的线程会在队列中等待 (3) newScheduledThreadPool 定时执行线程池 , 支持定时及周期性任务执行 (4) newSingleThreadExecutor单线程化的线程池,只会用唯一的工作线程来执行任务, 保证所有任务按照顺序执行 。 如果这个唯一的线程因为异常结束,那么会有一个新的线程来替代它 v Sleep()和 Wait()的区别 (1) Sleep()是Thread的方法,Wait()是Object的方法 (2) Sleep( 休眠 )暂停指定时间,执行是CPU让出来,但对象锁继续保持。休眠时间到之后自动回复就绪状态。Wait( 线程暂停执行 )当前线程放弃对象锁

客户端Bug优先级定义

泪湿孤枕 提交于 2020-04-08 10:58:09
Priority : 所提交的bug应该被修复的优先级。共分为四级,分别为P0、P1、P2、P3, 其中P0最高,P3最低。P0&P1的bug必须要在上线前完全修复。详细说明如下: Pri=0 表示block了几乎大部分相关case的bug,比如该实现的没有实现,或者实现和需求差异非常大,或者这个bug修复后会导致相关的功能全部都要回归; Pri=1 表示发生在一些重点模块或者block了少部分case的bug; Pri=2 表示其基本上不会对其他case产生block或者修复不会影响其他功能的bug; Pri=3 表示一些可修可不修的bug。 Severity : 所提交的bug对系统的影响程度。同样分为四级,S0、S1、S2、S3,数字越小,影响程度越高。详细说明如下: Sev=0 表示导致系统无法正常工作的bug Sev =1 表示未能很好实现需求/设计所要求功能的bug,且对系统功能影响较大的bug; Sev =2 表示实现不符合需求/设计,但对系统而言影响一般,相应操作发生几率比较小的bug; Sev =3 表示实现不符合需求,但是对系统功能影响较小,甚至可替代的一类bug。 Bug 优先级细化定义 P0 定义:完全不能满足产品要求,基本功能明显未实现或完全不可用。产品发布后,出现此类问题,将导致产品必须下线或发小版本修复。 l 性能及稳定性 1. 严重crash, 闪退

客户端case优先级定义

北城以北 提交于 2020-04-08 10:51:55
一、TEST CASE的优先级定义 测试用例的优先级用于标识测试用例的重要性和执行频率,共分为4级,由高至低依次为P0-P3。 P0 核心功能测试用例(冒烟测试),确定此版本是否可测的测试用例,此部分测试用例如果fail会阻碍大部分其他测试用例的验证。 P1 高优先级测试用例,最常执行以保证功能性是稳定的;基本功能测试,和重要的错误、边界测试 P2 中优先级测试用例,更全面地验证功能的各个方面,异常测试,边界、中断、断网、容错、UI等测试用例 P3 低优先级测试用例,不常常被执行,性能、压力、兼容性、稳定性、安全、可用性等等。 二、如何划分TEST CASE的优先级 2.1 初步划分 1.把所有功能性验证(或基本路径)的测试标注为P1; 2.把所有错误、边界值、UI测试标注为P2; 3.把所有非功能性的测试(例如性能、可用性、稳定性、安全、兼容等)标注为P3。 2.2 提升和降级 并非所有的功能性测试都一样的重要,并且有些边界和非功能性测试也很重要。思考一下测试的重要性及相对于其他同等优先级别的测试,你想要检查这个功能的频率,考虑质量目标和项目的需求,可以对case重新调整,规则如下: 1.把功能性验证测试分为两组:重要和不是十分重要,将“不是十分重要”的功能性验证测试降级为P2; 2.把错误和边界测试分成两组:重要和不是十分重要,将“重要”的错误和边界测试升级为P1; 3

priority_queue的常用用法

☆樱花仙子☆ 提交于 2020-04-06 21:40:22
这个是队列queue的扩展。 队首元素一定是当前列队优先级最高的元素。(堆) 优先级设置:基本数据类型       或者是priority_queue <int, vector<int>, less<int> > q://字数大的优先级就大;(大顶堆)       priority_queue <int, vector<int>, greater<int> > q://字数小的优先级就大;(小顶堆)     :对于结构体的优先级:通过重载运算符 < 。 链接知识>>>>>>>>>栈stack: 来源: https://www.cnblogs.com/aiqinger/p/12649180.html

快速了解时间敏感网络(TSN)_Part2

ε祈祈猫儿з 提交于 2020-04-06 15:06:07
大家好,上期我们介绍了TSN是什么,能够给我们带来什么好处以及TSN的用途。在文章的最后也给我们的协议介绍起了个头,讲解了TSN中用到的时钟同步系统IEEE 802.1AS-Rev。如果有小伙伴漏掉了上期的内容,可以点此链接查看:快速了解时间敏感网络(TSN)_Part1 今天我们就开始介绍TSN协议族中的其他成员包括:延迟(TAS和帧抢占)、流量监控(802.1Qci)和冗余(802.1CB) IEEE 802.1Qbv Time Aware Shaper 时间感知整形(TAS)可以说是TSN里的一个核心协议,正是它的应用为车内时间敏感数据提供了超低的延时及抖动的保证。 我们知道,以太网的数据是在总线上串行传输的,如图5,当有多个数据在交换机出口等待被转出时(不同的数据会根据VLAN Tag中的优先级在不同的队列中排队等待),谁先出谁后出就决定了数据的延迟大小。 图5 以太网出口队列示意图 TAS通过开关门的机制,来控制数据的发送。 如图6,通过右侧的Gate Control list来控制每个队列在某一时刻的开关门状态,以右侧黑框圈出的T05举例,该时刻 队列7到队列0的开关门状态分别是CoCCoCCC(C表示关门,o表示开门)。数据只有在开门的时候才可以进行发送,也就是说该时刻只有队列6和队列3可以发送数据。 图6 TAS 开关门控制 (图片部分引自IEEE 802.1Q)

【实战】5.确定核心功能

限于喜欢 提交于 2020-04-06 08:02:20
确定核心功能 一个稍微大一点的项目或者大迭代都会有很多功能点,如果给予的开发周期长,那么就不存在什么问题。可是如果开发短,需求急,这个时候就需要将功能需求排好优先级,也就是说核心功能与边缘功能的区分。 核心功能的梳理是迭代中的一个重要工作,这里我就和大家聊聊我比较常用的一个方法。 一、梳理 把功能需求按照思维导图或者其他形式梳理出来,梳理要做到细而全,我推荐的是使用思维导图。 这样有利于你对整个项目或者迭代的全面认识,而不遗漏一个小点。 二、确定功能类型 将功能按照思维导图梳理出来初期还只是一个简单的功能罗列。我们首先对每个功能模块做类型区分,这里的类型指的是新增、修改、删除。如果有存在不确定的地方,应该使用其他记号标记,比如?问号。 三、缕关系 部分功能模块都是有关联关系的,这个功能依赖于那个功能的实现。所以需要缕清每个功能点之间的关系,比如一个功能必须依赖另外一个功能点,那么使用链接符拉个线,或者其他比较明了的标示或者注释。 四、标记重点 我们做完功能关系梳理后,那么可以对功能的优先级标记重点了。 例如:banner功能比较独立,相对于订单购买功能,订单支付功能,优先级较低,可以为3活着更低4。订单购买依赖于商品系统,而且是整个核心流程,商品系统优先级为1,其次是订单购买优先级为2。 五、看实现方式 我们排出功能优先级了,就一定全部按照这个功能开发了吗?肯定不是

1. 什么是用户故事?

为君一笑 提交于 2020-04-05 22:21:39
1. 什么是用户故事? 用户故事描述了对用户或客户有价值的功能。用户故事由以下三方面组成(3C): 一份书面的故事描述,用来做计划和作为提示(Card)。 有关故事的对话,用于具体化故事细节(Conversation)。 测试,用于表达和编档故事细节且可用于确定故事何时完成(Confirmation)。 可以用故事卡来记录用户故事,在故事卡的正面记录故事的简短描述,背面则记录测试要点。 2. 什么是优秀的用户故事? 优秀的用户故事应该具备以下6个特点(INVEST): 独立的(Independent)。 可讨论的(Negotiable)。 对用户或客户有价值的(Valuable to users or customers)。 可估计的(Estimatable)。 小的(Small)。 可测试的(Testable)。 3. 为什么使用用户故事? 使用用户故事能够带来下面好处: 用户故事强调口头沟通。可以提供迅速的反馈周期,能够促成对需求的充分理解。 用户故事更容易被人理解。 用户故事的大小适合做计划。 用户故事适合于迭代开发。可以很容易的从一个史诗故事入手,并在需要的时候将其分解成多个小故事。 用户故事鼓励延迟细节。可以很快的写出大量用户故事,迅速的开展工作。 用户故事鼓励随机应变的设计。团队能迅速的在高层及低层细节思考间切换。 用户故事鼓励参与性设计。 用户故事有利于传播隐性知识。

路由交换(六):路由基础及静态路由

萝らか妹 提交于 2020-04-04 23:32:32
路由基础及静态路由 一、路由基础 1、路由器工作原理 路由器收到一个数据报文,先检查目的IP地址,再查找路由表。查找到匹配的路由表项后根据该表项的出接口和下一跳将数据报转发。路由表项一般分为直连路由、静态路由、动态路由。IP路由表中存放最优路由条目。最优路由标目一般根据最长匹配原则、路由优先级、路由度量值来选择。 最长匹配原则:路由表中如果存在多个匹配目的网络的路由条目,选择掩码长度最长的条目加表 路由优先级:当掩码长度相同,比较路由优先级,路由协议优先级越小越优先 路由度量值:当路由优先级相同,比较路由度量值,度量值越小越优先。 2、路由类型 路由类型如下 直连路由:链路层协议发现的路由条目,也称为接口路由 静态路由:网络管理员手工配置的路由。静态路由配置简单,适用于拓扑简单小型网络。 动态路由:动态路由协议学习发现的路由,常见动态路由协议有RIP、OSPF、BGP、ISIS等 3、华为默认路由协议优先级 二、静态路由 1、静态路由简介 静态路由配置简单灵活,可以实现负载均衡和路由备份。需要手动配置和维护路由,当网络拓扑发生变化时不能及时做出响应,需要手动更新配置,适合结构简单的网络场景下。 2、静态路由配置 配置普通静态路由 ip route-static net_prefix netmask next_hop_ip <br/>ip route-static 2.2.2.0

路由交换(八):OSPF

三世轮回 提交于 2020-04-04 22:37:33
OSPF 一、OSPF简介 OSPF(Open Shortest Path First,开放最短路径优先),是内部网关协议,应用在自治系统内部,一种链路状态路由协议,使用最短路径优先算法计算路由。OSPF数据报文封装在IP报文内部,协议号为89,使用单播或组播发送。 OSPF特点如下: 适合范围广,快速收敛,无自环、区域划分、支持验证、组播发送 二、OSPF工作原理 1、OSPF邻居建立过程 DR与BDR选举 在广播网络和NBMA网络中,为减小OSPF流量,需要选举DR和BDR。DR与BDR非抢占;DR与BDR、DR与Drother、BDR与Drother之间是Full状态,Drother之间是two-way状态。所有的Drother都只和DR和BDR建立全毗邻关系。根据运行OSPF协议的路由器接口优先级和端口PID来选举DR和BDR,接口优先级范围是0-255,优先级为0表示不参与DR、BDR选举。接口优先级越大越优先,当接口优先级相同时,比较端口PID,PID较大的成为DR。 2、报文类型 Hello报文 功能:周期性发送,用来发现和维持OSPF邻居关系 DD报文 功能:描述本地LSDB的摘要信息,用于同步LSDB LSR报文 功能:请求特定的链路状态信息 LSU报文 功能:发送详细的链路状态信息 LSAck报文 功能:确认收到的LSA 3、网络类型 点到点类型 不需要选举

OpenGL纹理映射总结

纵然是瞬间 提交于 2020-04-04 19:19:27
1.纹理对象: 使用纹理对象来存储纹理数据的步骤: 1) 生成纹理对象名称 2) 将纹理对象绑定到纹理数据(包括图像数据数组和纹理属性), 即创建纹理对象. 3) 如果OpenGL实现高性能纹理工作集, 应检查是否有足够的空间来存储所有的纹理对象. 如没有足够空间, 应设置每个纹理对象的优先级, 以确保最常用的纹理留在工作集中 4) 绑定和重新绑定纹理对象, 以便可以将其中的纹理映射到物体上. 2.生成纹理对象名称: void glGenTextures(GLsizei n, GLint* textureNames); 功能: 通过数组textureNames返回n个未用的纹理对象名, 返回的名称不必是相邻的整数. GLboolean glIsTexture(GLint textureName); 功能: 如textureName是已被绑定的纹理对象名, 且没有被删除, 则返回GL_TRUE, 如textureName为0, 或非0, 但不是已有纹理对象的名称, 返回GL_FALSE。 注:若glGenTextures()返回, 但未使用glBindTextures()绑定, 仍返回GL_FALSE 3.创建和使用纹理对象: void glBindTexture(GLenum target, GLuint textureName); 功能: 完成下面几项工作. 1)