- Java | 多线程经典问题 - 售票
Ada54
一、售票需求1)同一个票池2)多个窗口卖票,不能出售同一张票二、售票问题代码实现(线程与进程小总结,请戳:Java|线程和进程,创建线程)step1:定义SaleWindow类实现Runnable接口,覆盖run方法step2:实例化SaleWindow对象,创建Thread对象,将SaleWindow作为参数传给Thread类的构造函数,然后通过Thread.start()方法启动线程step3
- C++ :vector的模拟
诚自然成
c++开发语言
目录一、vector的迭代器二、vector的构造函数默认构造函数参数构造函数迭代器范围构造函数拷贝构造函数swap:交换vector重载赋值符析构函数reserve:扩容vectorresize:调整大小push_back:添加元素empty:判空pop_back:后删获取大小与容量:size(),capacity()重载operator[]:元素访问insert:插入元素erase:删除一个元
- Java8 Stream流的sorted()的排序【正序、倒序、多字段排序】
Tony666688888
javawindows开发语言
针对集合排序,java8可以用Stream流的sorted()进行排序。示例Bean以下我们会使用这个Bean来做示例。publicclassOrder{privateStringweight;privateDoubleprice;privateStringdateStr;//忽略getter、setter、构造方法、toString}字段排序首先是比较器Comparator,形式如下:Compa
- C++中std::variant的使用详解和实战代码示例
点云SLAM
C++c++开发语言variantC++泛型编程联合体C++类型擦除机制C++17
std::variant是C++17引入的一个类型安全的联合体(type-safeunion),它可以在多个类型之间存储一个值,并在编译时进行类型检查。它是现代C++类型擦除与泛型编程的核心工具之一,适用于构建可变类型结构、消息传递系统、状态机等。一、基本概念#includestd::variantv;类似于联合体union,但类型安全。std::variant只能存储其中一个类型的值。默认构造时
- 001 Configuration结构体构造
盖世灬英雄z
DramSysc++人工智能
目录DramSys代码分析1Configuration结构体构造1.1`from_path`函数详解1.2构造过程总结这种设计的好处2Simulator例化过程2.1instantiateInitiatorDramSys代码分析1Configuration结构体构造好的,我们来详细解释一下DRAMSysConfiguration.cpp文件中from_path函数的配置构造过程。这个文件是DRAM
- Java:数据结构-ArrayList和顺序表(2)
blammmp
java数据结构开发语言
一ArrayList的使用1.ArrayList的构造方法第一种(指定容量的构造方法)创建一个空的ArrayList,指定容量为initialCapacity。publicArrayList(intinitialCapacity){if(initialCapacity>0){this.elementData=newObject[initialCapacity];}elseif(initialCap
- 【数据结构】--ArrayList与顺序表
bubu__
数据结构数据结构
文章目录1.线性表2.顺序表3.ArrayList简介4.MyArrayList的实现5.ArrayList使用5.1ArrayList的构造5.2ArrayList常见操作5.3ArrayList的遍历5.4ArrayList的扩容机制6.ArrayList的具体使用6.1简单的洗牌算法6.2杨辉三角1.线性表线性表(linearlist)是n个具有相同特性的数据元素的有限序列。线性表是一种在实
- 2025最新Mybatis-plus教程(三)
四、MyBatis-Plus条件构造器(一)条件构造器介绍在MyBatis-Plus中提了构造条件的类Wrapper,它可以根据自己的意图定义我们需要的条件。Wrapper是一个抽象类,一般情况下我们用它的子类QueryWrapper来实现自定义条件查询。(二)selectOne方法@TestpublicvoidtestSelectOne(){ QueryWrapperqueryWrapper=n
- 嵌入式学习 c语言 构造数据类型 结构体
1.结构体基础语法在C语言中,结构体(struct)用于将不同类型的数据组合成一个自定义数据类型。struct结构体名{数据类型成员1;数据类型成员2;//更多成员...};结构体示例代码#include//定义结构体structStudent{intid;charname[50];floatscore;};intmain(){//声明结构体变量structStudentstu1;//初始化结构体
- OpenGL里相机的运动控制
qq_42987967
计算机图形学学习笔记数码相机
相机的核心构造一个是glm::lookAt函数,一个是glm::perspective函数,本文相机的一切运动都在于如何构建相应的参数传入上述两个函数里。glm::mat4glm::lookAt(glm::vec3const&eye,//相机所在位置glm::vec3const¢er,//要凝视的点glm::vec3const&up//相机上向量);glm::mat4perspective
- ZAP漏洞扫描系列04:手动导入请求添加站点
宁儿数据安全
#安全测试安全
ZAP漏洞扫描系列04:手动导入请求添加站点通过请求器“曲线救国”添加站点,可按以下步骤操作(本质是手动发请求让ZAP识别站点):GET请求步骤1:在请求器构造目标站点请求在请求器的“请求”编辑框,替换默认内容为:点击“发送(Send)”按钮,ZAP会向http://10.1.1.xx:8081/发请求。GEThttp://10.1.1.xx:8081/HTTP/1.1host:10.1.1.xx
- SQL97 验证刷题效果,输出题目真实通过率
折翼的恶魔
MYSQL数据库
牛客刷题记录表`done_questions_record`,为验证重复刷题率,输出题目通过率(哪些题目被通过了,这个人你一共刷题的题目)question_pass_rate60%的用户的提交正确率pass_rate与每题目平均提交次数question_per_cnt。result_info'是否通过,1:通过;0:不通过',查询返回结果名称和顺序user_idquestion_pass_rate
- 十月一日
叮当_750fth
十月一号,国庆节,举国欢庆。对打工人而言是个和春节同等长度的假期,自然高兴。这一天期盼已久,迫不及待,终于来了。回家,走亲戚,访朋友,旅游,登山涉水,或者依然值班加班中,你是哪一种呢?市区广场,政府门口,公园,其他重要路口,社区,早早摆了喜迎国庆的花卉造型。造型各异,形态不一,构造不一,主题一致:欢度国庆、共迎国庆,繁荣昌盛,国泰民安。祖国母亲七十二岁生日快乐!生日快乐
- Java反射
反射ReflectionClass对象照镜子后可以得到的信息:某个类的属性、方法和构造器、某个类到底实现了哪些接厂对于每个类而言,JRE都为其保留一个不变的Class类型的对象。-个Class对象包含了特定某个结构(class/interface/enum/annotation/primitivetype/void/])的有关信息。Class本身也是一个类Class对象只能由系统建立对象一个加载的
- c++ STL容器 --- 列表initializer_list
qiuqiuyaq
STL容器c++
包含头文件在标准库中的容器可以直接用等号的方式初始化容器→直接用等号赋值{}列表就是一个{}数据一般情况下,如果想采用{}的方式初始化,类当中必须要有与之相匹配的参数的构造函数提供了一个构造函数,用initializer_list当做构造函数的参数,就可以实现我们想要的效果(有几个参数都可以)initializer_list主要是用在构造函数当中,可以忽略参数的个数去做初始化(两个、三个、多个..
- C++98和C++11的构造和初始化、initializer_list以及decltype关键字(一般)
无聊看看天T^T
C++从入门到入土c++开发语言
目录前言C++98的构造与初始化C++11的构造与初始化初始化列表的initializer_listdecltype关键字前言2003年C++标准委员会曾经提交了一份技术勘误表(简称TC1),使得C++03这个名字取代了C++98成为了C++11前最新的C++标准名称。不过由于C++03主要是对C++98标准中的漏洞进行修复,语言的核心部分则没有改动,因此人们习惯性的把两个标准合并成为C++98/
- 掌握SQL注入:漏洞演示与防护策略实战源代码
May Wei
本文还有配套的精品资源,点击获取简介:SQL注入是一个影响Web应用和数据库安全的漏洞。通过本项目源代码演示,开发者能深入理解SQL注入的工作机制及其攻击方法。文档和源代码示例将指导如何通过构造恶意SQL语句执行非授权数据库操作,以及如何通过实践学习防止此类攻击,包括安全编码、输入验证、错误处理、数据库权限设置和日志监控等。1.SQL注入概念和攻击方法1.1SQL注入漏洞的基本原理1.1.1SQL
- 数据结构之顺序表&链表&栈
tryxr
数据结构顺序表链表栈
顺序表什么是listlist的使用线性表是什么顺序表是什么顺序表和线性表的关系顺序表和数组的区别List和ArrayList的关系如何自己模拟实现myArrayListArrayList的构造ArrayList的常见方法以下两种写法有什么区别ArrayListarrayList=newArrayListlist=newArrayList是什么意思返回值是List>是什么意思ArrayList实现杨
- 19、享元模式与代理模式:优化代码性能的利器
lg888
享元模式代理模式代码优化
享元模式与代理模式:优化代码性能的利器享元模式实现享元模式的一般步骤当满足特定条件时,程序可以使用享元模式进行优化。实现享元模式通常遵循以下一般步骤:1.剥离目标类的外部数据:尽可能从类中移除那些会因实例不同而变化的属性,构造函数的参数也应如此处理。这些数据不再存储在类内部,而是由管理器传入。类仍需具备之前的功能,只是数据来源不同。2.创建工厂来控制类的实例化:工厂需要跟踪已创建的类的所有唯一实例
- GAMES202——作业1 实时阴影(ShadowMap,PCF,PCSS)
目录任务ShadowMapPCFPCSS实现ShadowMapuseShadowMapPCFfindBlockerPCSS结果任务ShadowMap1.在ShadowMaterial.js中需要向Shader传递正确的uLightMVP矩阵,该矩阵参与了第一步从光源处渲染场景从而构造ShadowMap的过程。你需要完成DirectionalLight中的CalcLightMVP(translate
- Websocket使用简单示例
北海几经夏
前端websocket前端
在前端开发中,WebSocket用于建立客户端与服务器的持久化双向通信连接,相比HTTP的单向请求响应模式,能更高效地实现实时数据交互(如聊天、实时通知、数据更新等场景)。基本步骤如下:1.建立WebSocket连接通过WebSocket构造函数创建连接,传入服务器WebSocket接口地址(协议为ws://或加密的wss://)://连接服务器WebSocket端点constsocket=new
- JavaScript函数使用模式与作用域的深入解析
JavaScript函数使用模式与作用域的深入解析JavaScript作为一门灵活且功能强大的编程语言,其函数的使用和作用域的特性是学习和开发中的关键点。本篇博客将深入解析JavaScript函数的几种使用模式,以及作用域的重要概念。构造器模式在JavaScript中,函数可以作为构造器(constructor)使用,当用new关键字调用时,函数会返回一个新对象。为了区分构造器函数和其他普通函数,
- Python与机器学习库Scikit-learn进阶
master_chenchengg
pythonpythonPythonpython开发IT
Python与机器学习库Scikit-learn进阶Scikit-learn进阶之旅:从新手到高手的必经之路为什么选择Scikit-learn?安装与环境设置特征工程的艺术:打造更强大的预测模型数据清洗特征构造模型调优秘籍:网格搜索与交叉验证的最佳实践网格搜索交叉验证集成学习的魅力:提升模型性能的组合拳随机森林梯度提升机堆叠实战案例解析:使用Scikit-learn解决真实世界问题数据准备模型训练
- 深入理解 Spring IOC:从概念到实践
十六点五
spring后端java
目录一、引言二、什么是IOC?2.1控制反转的本质2.2类比理解三、SpringIOC的核心组件3.1IOC容器的分类3.2Bean的生命周期四、依赖注入(DI)的三种方式4.1构造器注入4.2Setter方法注入4.3注解注入(推荐)五、案例演示:从XML配置到注解驱动5.1XML配置方式5.2注解驱动方式(推荐)六、SpringIOC的优势与注意事项6.1核心优势6.2注意事项七、总结一、引言
- 大学生入门:Random类及其易踩坑的点
和之前提到的Scanner一样,Random同样是java.util包中的一个类。大学生入门:Scanner简单介绍及易踩坑的点_javascanner使用的坑-CSDN博客https://blog.csdn.net/qq_73698057/article/details/149448413?spm=1001.2014.3001.5501主要作用就是用来生成随机数,构造方法和Scanner看上去一
- JS中的显式转换
我小时候很可爱
显式转换显示转换一般指使用Number、String和Boolean三个构造函数,手动将各种类型的值,转换成数字、字符串或者布尔值。布尔型转换ECMAScript中所有类型的值都有与Boolean值(true和false)等价的值。要将一个值转换为其对应的Boolean值,可以调用转型函数Boolean()。数据类型转换为true转换为falseString任何非空字符串空字符串Number任何非
- Python_继承
西瓜超人励志要变小细腿
面向对象的三大特性:继承性封装性多态性建议!!一个模块只写一个类一、继承子类调用父类的构造函数:可以直接调用父类的构造函数,但必须传入self参数【可行,但是不推荐!!!】python中super关键字用法与java不同,它主要是用来在子类中调用父类方法,例:当子类的方法和父类的方法同名时,python会优先调用子类的方法,需要用super关键字去调用父类方法。例:
- LeetCode 214:最短回文串
生当鼎食死封侯
算法leetcodejavaandroid
LeetCode214:最短回文串问题定义与核心挑战给定字符串s,需通过在前面添加字符将其转换为回文串,求最短的such回文串。例如:输入s="abcd"→输出dcbabcd(添加dcb到前面)。核心挑战:如何高效找到最长回文前缀(从开头开始的最长回文子串),从而最小化添加的字符数。核心思路:KMP的LPS数组利用KMP算法的最长公共前后缀(LPS)数组,将问题转换为寻找字符串的对称结构:构造辅助
- LeetCode 60:排列序列
生当鼎食死封侯
leetcode算法职场和发展
LeetCode60:排列序列问题定义与核心挑战给定整数n和k,返回集合{1,2,...,n}的第k个字典序排列。直接生成所有排列再遍历到第k个的方法(时间复杂度O(n!))会因n≥10时阶乘爆炸而超时,因此需要数学推导+贪心构造的高效解法。核心思路:阶乘定位法利用阶乘的分组特性,逐位确定排列的每个数字:阶乘分组:对于n个数字,每个首位固定后,剩余n-1个数字的排列数为(n-1)!。例如,n=3时
- 云鲸智能嵌入式面试及参考答案
大模型大数据攻城狮
selectepollRTOS系统高电平用户态cache一致linux内存
目录指针函数和函数指针的区别是什么?请介绍构造函数和析构函数的相关内容。请详细说明C++虚函数的相关知识。请详细说明C++智能指针的相关知识。new和malloc的区别是什么?volatile关键字的含义是什么?C和C++混合编译时,为什么需要头文件?其底层实现原理是什么?堆和栈的区别是什么?除了堆和栈,还有哪些存储区?请详细说明C++内存管理的相关知识。Linux内存泄露检测工具的实现原理是什么
- PHP如何实现二维数组排序?
IT独行者
二维数组PHP排序
二维数组在PHP开发中经常遇到,但是他的排序就不如一维数组那样用内置函数来的方便了,(一维数组排序可以参考本站另一篇文章【PHP中数组排序函数详解汇总】)。二维数组的排序需要我们自己写函数处理了,这里UncleToo给大家分享一个PHP二维数组排序的函数:
代码:
functionarray_sort($arr,$keys,$type='asc'){
$keysvalue= $new_arr
- 【Hadoop十七】HDFS HA配置
bit1129
hadoop
基于Zookeeper的HDFS HA配置主要涉及两个文件,core-site和hdfs-site.xml。
测试环境有三台
hadoop.master
hadoop.slave1
hadoop.slave2
hadoop.master包含的组件NameNode, JournalNode, Zookeeper,DFSZKFailoverController
- 由wsdl生成的java vo类不适合做普通java vo
darrenzhu
VOwsdlwebservicerpc
开发java webservice项目时,如果我们通过SOAP协议来输入输出,我们会利用工具从wsdl文件生成webservice的client端类,但是这里面生成的java data model类却不适合做为项目中的普通java vo类来使用,当然有一中情况例外,如果这个自动生成的类里面的properties都是基本数据类型,就没问题,但是如果有集合类,就不行。原因如下:
1)使用了集合如Li
- JAVA海量数据处理之二(BitMap)
周凡杨
java算法bitmapbitset数据
路漫漫其修远兮,吾将上下而求索。想要更快,就要深入挖掘 JAVA 基础的数据结构,从来分析出所编写的 JAVA 代码为什么把内存耗尽,思考有什么办法可以节省内存呢? 啊哈!算法。这里采用了 BitMap 思想。
首先来看一个实验:
指定 VM 参数大小: -Xms256m -Xmx540m
- java类型与数据库类型
g21121
java
很多时候我们用hibernate的时候往往并不是十分关心数据库类型和java类型的对应关心,因为大多数hbm文件是自动生成的,但有些时候诸如:数据库设计、没有生成工具、使用原始JDBC、使用mybatis(ibatIS)等等情况,就会手动的去对应数据库与java的数据类型关心,当然比较简单的数据类型即使配置错了也会很快发现问题,但有些数据类型却并不是十分常见,这就给程序员带来了很多麻烦。
&nb
- Linux命令
510888780
linux命令
系统信息
arch 显示机器的处理器架构(1)
uname -m 显示机器的处理器架构(2)
uname -r 显示正在使用的内核版本
dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)
hdparm -i /dev/hda 罗列一个磁盘的架构特性
hdparm -tT /dev/sda 在磁盘上执行测试性读取操作
cat /proc/cpuinfo 显示C
- java常用JVM参数
墙头上一根草
javajvm参数
-Xms:初始堆大小,默认为物理内存的1/64(<1GB);默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制
-Xmx:最大堆大小,默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到 -Xms的最小限制
-Xmn:新生代的内存空间大小,注意:此处的大小是(eden+ 2
- 我的spring学习笔记9-Spring使用工厂方法实例化Bean的注意点
aijuans
Spring 3
方法一:
<bean id="musicBox" class="onlyfun.caterpillar.factory.MusicBoxFactory"
factory-method="createMusicBoxStatic"></bean>
方法二:
- mysql查询性能优化之二
annan211
UNIONmysql查询优化索引优化
1 union的限制
有时mysql无法将限制条件从外层下推到内层,这使得原本能够限制部分返回结果的条件无法应用到内层
查询的优化上。
如果希望union的各个子句能够根据limit只取部分结果集,或者希望能够先排好序在
合并结果集的话,就需要在union的各个子句中分别使用这些子句。
例如 想将两个子查询结果联合起来,然后再取前20条记录,那么mys
- 数据的备份与恢复
百合不是茶
oraclesql数据恢复数据备份
数据的备份与恢复的方式有: 表,方案 ,数据库;
数据的备份:
导出到的常见命令;
参数 说明
USERID 确定执行导出实用程序的用户名和口令
BUFFER 确定导出数据时所使用的缓冲区大小,其大小用字节表示
FILE 指定导出的二进制文
- 线程组
bijian1013
java多线程threadjava多线程线程组
有些程序包含了相当数量的线程。这时,如果按照线程的功能将他们分成不同的类别将很有用。
线程组可以用来同时对一组线程进行操作。
创建线程组:ThreadGroup g = new ThreadGroup(groupName);
&nbs
- top命令找到占用CPU最高的java线程
bijian1013
javalinuxtop
上次分析系统中占用CPU高的问题,得到一些使用Java自身调试工具的经验,与大家分享。 (1)使用top命令找出占用cpu最高的JAVA进程PID:28174 (2)如下命令找出占用cpu最高的线程
top -Hp 28174 -d 1 -n 1
32694 root 20 0 3249m 2.0g 11m S 2 6.4 3:31.12 java
- 【持久化框架MyBatis3四】MyBatis3一对一关联查询
bit1129
Mybatis3
当两个实体具有1对1的对应关系时,可以使用One-To-One的进行映射关联查询
One-To-One示例数据
以学生表Student和地址信息表为例,每个学生都有都有1个唯一的地址(现实中,这种对应关系是不合适的,因为人和地址是多对一的关系),这里只是演示目的
学生表
CREATE TABLE STUDENTS
(
- C/C++图片或文件的读写
bitcarter
写图片
先看代码:
/*strTmpResult是文件或图片字符串
* filePath文件需要写入的地址或路径
*/
int writeFile(std::string &strTmpResult,std::string &filePath)
{
int i,len = strTmpResult.length();
unsigned cha
- nginx自定义指定加载配置
ronin47
进入 /usr/local/nginx/conf/include 目录,创建 nginx.node.conf 文件,在里面输入如下代码:
upstream nodejs {
server 127.0.0.1:3000;
#server 127.0.0.1:3001;
keepalive 64;
}
server {
liste
- java-71-数值的整数次方.实现函数double Power(double base, int exponent),求base的exponent次方
bylijinnan
double
public class Power {
/**
*Q71-数值的整数次方
*实现函数double Power(double base, int exponent),求base的exponent次方。不需要考虑溢出。
*/
private static boolean InvalidInput=false;
public static void main(
- Android四大组件的理解
Cb123456
android四大组件的理解
分享一下,今天在Android开发文档-开发者指南中看到的:
App components are the essential building blocks of an Android
- [宇宙与计算]涡旋场计算与拓扑分析
comsci
计算
怎么阐述我这个理论呢? 。。。。。。。。。
首先: 宇宙是一个非线性的拓扑结构与涡旋轨道时空的统一体。。。。
我们要在宇宙中寻找到一个适合人类居住的行星,时间非常重要,早一个刻度和晚一个刻度,这颗行星的
- 同一个Tomcat不同Web应用之间共享会话Session
cwqcwqmax9
session
实现两个WEB之间通过session 共享数据
查看tomcat 关于 HTTP Connector 中有个emptySessionPath 其解释如下:
If set to true, all paths for session cookies will be set to /. This can be useful for portlet specification impleme
- springmvc Spring3 MVC,ajax,乱码
dashuaifu
springjquerymvcAjax
springmvc Spring3 MVC @ResponseBody返回,jquery ajax调用中文乱码问题解决
Spring3.0 MVC @ResponseBody 的作用是把返回值直接写到HTTP response body里。具体实现AnnotationMethodHandlerAdapter类handleResponseBody方法,具体实
- 搭建WAMP环境
dcj3sjt126com
wamp
这里先解释一下WAMP是什么意思。W:windows,A:Apache,M:MYSQL,P:PHP。也就是说本文说明的是在windows系统下搭建以apache做服务器、MYSQL为数据库的PHP开发环境。
工欲善其事,必须先利其器。因为笔者的系统是WinXP,所以下文指的系统均为此系统。笔者所使用的Apache版本为apache_2.2.11-
- yii2 使用raw http request
dcj3sjt126com
http
Parses a raw HTTP request using yii\helpers\Json::decode()
To enable parsing for JSON requests you can configure yii\web\Request::$parsers using this class:
'request' =&g
- Quartz-1.8.6 理论部分
eksliang
quartz
转载请出自出处:http://eksliang.iteye.com/blog/2207691 一.概述
基于Quartz-1.8.6进行学习,因为Quartz2.0以后的API发生的非常大的变化,统一采用了build模式进行构建;
什么是quartz?
答:简单的说他是一个开源的java作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制。并且还能和Sp
- 什么是POJO?
gupeng_ie
javaPOJO框架Hibernate
POJO--Plain Old Java Objects(简单的java对象)
POJO是一个简单的、正规Java对象,它不包含业务逻辑处理或持久化逻辑等,也不是JavaBean、EntityBean等,不具有任何特殊角色和不继承或不实现任何其它Java框架的类或接口。
POJO对象有时也被称为Data对象,大量应用于表现现实中的对象。如果项目中使用了Hiber
- jQuery网站顶部定时折叠广告
ini
JavaScripthtmljqueryWebcss
效果体验:http://hovertree.com/texiao/jquery/4.htmHTML文件代码:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>网页顶部定时收起广告jQuery特效 - HoverTree<
- Spring boot内嵌的tomcat启动失败
kane_xie
spring boot
根据这篇guide创建了一个简单的spring boot应用,能运行且成功的访问。但移植到现有项目(基于hbase)中的时候,却报出以下错误:
SEVERE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.Lif
- leetcode: sort list
michelle_0916
Algorithmlinked listsort
Sort a linked list in O(n log n) time using constant space complexity.
====analysis=======
mergeSort for singly-linked list
====code======= /**
* Definition for sin
- nginx的安装与配置,中途遇到问题的解决
qifeifei
nginx
我使用的是ubuntu13.04系统,在安装nginx的时候遇到如下几个问题,然后找思路解决的,nginx 的下载与安装
wget http://nginx.org/download/nginx-1.0.11.tar.gz
tar zxvf nginx-1.0.11.tar.gz
./configure
make
make install
安装的时候出现
- 用枚举来处理java自定义异常
tcrct
javaenumexception
在系统开发过程中,总少不免要自己处理一些异常信息,然后将异常信息变成友好的提示返回到客户端的这样一个过程,之前都是new一个自定义的异常,当然这个所谓的自定义异常也是继承RuntimeException的,但这样往往会造成异常信息说明不一致的情况,所以就想到了用枚举来解决的办法。
1,先创建一个接口,里面有两个方法,一个是getCode, 一个是getMessage
public
- erlang supervisor分析
wudixiaotie
erlang
当我们给supervisor指定需要创建的子进程的时候,会指定M,F,A,如果是simple_one_for_one的策略的话,启动子进程的方式是supervisor:start_child(SupName, OtherArgs),这种方式可以根据调用者的需求传不同的参数给需要启动的子进程的方法。和最初的参数合并成一个数组,A ++ OtherArgs。那么这个时候就有个问题了,既然参数不一致,那