cpp加油站 cpp加油站
4年前
c++头脑风暴-多态、虚继承、多重继承内存布局
本篇文章深入分析多态、虚继承、多重继承的内存布局以及实现原理。首先还是看一下思维导图:下面根据这个大纲一步一步的进行深入解析。一、没有虚函数时内存布局是怎样的1.没有虚函数时类的内存布局一个类没有虚函数的时候,其实就是结构体,它的内存布局就是按照成员变量的顺序来的。看如下代码:cppinclude<iostreamusingnamespaces
Easter79 Easter79
3年前
tomcat正常运行一段时间后,突然访问不了项目了
前言我将项目部署在tomcat服务器上,本来都是好好的,输入网站地址就能访问;但是第二天一早去就会发现网站访问提示404,文件无法找到;我就很懵了。排查1、我是用的是chrome浏览器,所以尝试了下其余浏览器看是否能够访问;以外的发现IE竟然可以访问。说明问题不在代码2、找到tomcat的安装目录,查看错误日志;在l
Wesley13 Wesley13
3年前
SCHED_FIFO与SCHED_OTHER调度机制
疑问两个线程分别有不同的调度策略,一个SCHED\_FIFO,一个SCHED\_OTHER,按照之前的理解,SCHED\_FIFO实时线程一定会占用CPU一直运行,导致SCHED\_OTHER的普通线程得不到CPU,事实是这样么?验证写了一小段代码,一个是验证SCHED\_FIFO的高优先级线程会不会抢占低优先级的线程,在不主动放弃的
Wesley13 Wesley13
3年前
java多线程管理 concurrent包用法详解
我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常需要有程序员独立完成代码实现,当然也有一些开源的框架提供了这些功能,但是这些依然没有JDK自带的功能使用起来方便。而当针对高质量Java多线程并发程序设计时,为防止死蹦等现象的出现,比如使用java之前的wait()、notify()和synchronized等,每每需要考虑性能、死锁、公平性、
Wesley13 Wesley13
3年前
J.U.C并发包诞生的那些事儿
前言J.U.C是java包java.util.concurrent的简写,中文简称并发包,是jdk1.5新增用来编写并发相关的基础api。java从事者一定不陌生,同时,流量时代的今天,并发包也成为了高级开发面试时必问的一块内容,本篇内容主要聊聊J.U.C背后的哪些事儿,然后结合LockSupport和Unsafe探秘下并发包更底层的哪些代码,有可
Wesley13 Wesley13
3年前
Java数据结构之单向链表,兼谈对象引用
昨天参加中兴笔试,被一个单项链表的编程题给弄崩了。于是这几天开始学习Java与数据结构之间的知识。上过数据结构的课程,当时使用C演示的,导致了我一直觉得Java和数据结构之间的关系不是很大。直到今天,看了《Java数据结构与算法》,才如梦方醒。恩,要好好学习。下面贴一下我的代码:packagedatastructure;/
Wesley13 Wesley13
3年前
CODING 敏捷实战系列加餐课:CODING 做敏捷这一年
在数字化协同的大背景下,过去一年CODING以老牌代码托管工具为基础,华丽转型为一站式DevOps研发管理工具。本次课程《CODING做敏捷这一年:理解一站式DevOps产品思想》由CODING运营及项目协同产品总监张路宇进行分享,主要分析数字化协同的工具对于敏捷的作用,并现场互动讨论观众喜欢的工具、团队如何实践敏捷,做
Stella981 Stella981
3年前
Android 图片着色 Tint 详解
问题描述在app中可能存在一张图片只是因为颜色的不同而引入了多张图片资源的情况。比如一张右箭头的图片,有白色、灰色和黑色三种图片资源存在。所以我们可不可以只保留一张基础图片,在此图片基础上只是颜色改变的情况是否可以通过代码设置来动态修改呢?知识点概览:1\.setTint、setTintList:对drawable进行着色。
Wesley13 Wesley13
3年前
Javassist简介
Javassist是一个开源的分析、编辑和创建Java字节码的类库。是由东京工业大学的数学和计算机科学系的ShigeruChiba(千叶滋)所创建的。它已加入了开放源代码JBoss应用服务器项目,通过使用Javassist对字节码操作为JBoss实现动态"AOP"框架。它可以用来检查、”动态”修改以及创建Java类。其功能与jdk自带的反射功能类
Stella981 Stella981
3年前
Spring MVC 监听文件上传进度,实现上传进度条
首先Spring是一个非常成熟的J2EE框架,其非入侵式的架构为系统的集成和扩展提供了最大的可能。所以SpringMVC下实现进度监听非常容易,甚至不需要改以前的上传业务代码,具体实现分三个步骤:1、接管CommonsMultipartResolver,重写针对文件上传的请求。2、在第一步中写入监听,以获取上传进度。3、修改上传部分的配置