- I²C时序模拟 (SN8P2711)
手搓芯片
单片机c语言算法
在没有硬件I2C的情况下,通过GPIO模拟I2C的时序。考虑到SN8P2711的架构,可能需要用C语言或者汇编来写,但通常C更常见。用户可能已经了解I2C的基本原理,但需要具体如何在SN8P2711上实现。需要确定I2C的模式,是主机模式还是从机模式?通常模拟的话,主机模式更常见,因为从机需要处理中断和时序更严格。用户可能作为主机控制其他I2C设备,比如EEPROM、传感器等。接着,要回顾I2C的
- 猜数字,暴力枚举0-9999,输入的A,B不用管,只需要处理数字即可
JackieZhang.
算法
#includeusingnamespacestd;boolcmp(string&answer,string&guess,string&results){inta=0;//统计数字正确且位置正确的个数intb=0;//统计数字正确但位置不正确的个数vectorguesslist;vectoranswerlist;for(inti=0;i>n;vectorguesses;vectorresults;
- amd64“、“arm64“、“armv5“、“armv6的解释
炎焱狼
笔记
amd64.tar.gz:amd64是一种处理器架构,也被称为x86-64。它是64位的x86体系结构,由AMD公司首先推出,后来被Intel公司也采纳。大多数现代个人电脑和服务器使用的处理器都是基于amd64架构的。因此,amd64.tar.gz文件通常是为amd64架构编译的软件或程序包,用于在与该架构兼容的系统上运行或安装。arm64.tar.gz:arm64是指ARMv8-A64位处理器架
- C语言简介
T.i.s
51单片机从0到1c语言
C语言简介C语言是一门面向过程的计算机编程语言,与C++、C#、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%-20%。因此,C语言可
- C++计算精解【21】
sakura_sea
游戏引擎与高性能计算c++开发语言
文章目录动手做汇编解释器【4】COCO/R概述变量赋值的ATG生成的代码框架参考文献动手做汇编解释器【4】COCO/R概述Coco/R是一个用于构造词法分析器(LexicalAnalyzers)和语法分析器(SyntaxAnalyzers)的开源工具。它是基于LALR(1)解析技术的,广泛用于编译器设计和软件开发中的语法分析阶段。https://ssw.jku.at/Research/Projec
- 软件设计师概念之 耦合类型
一坨仙女
软考笔记
耦合类型:(1)内容耦合:如果发生下列情形,两个模块之间就发生了内容耦合1.一个模块直接访问另一个模块的内部数据;2.一个模块不通过正常入口转到另一模块内部;3.两个模块有一部分程序代码重迭**(只可能出现在汇编语言中)**;4.一个模块有多个入口。(2)公共耦合:若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合。公共的数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等
- 【C/C++】进阶学习
七灵微
基本理论嵌入式c语言java前端
长期更新C语言:编译型语言,高级代码->编译(工具有gcc或cmake)->机器语言(可执行程序)->运行高级语言->汇编语言->机器语言gcchello.c#生成a.out可执行程序./a.out#运行这个程序gcchello.c-ohello#生成hello.out可执行程序./hello#不加后缀扩展名也能执行gcchello.c-std=c99#标准不一样c11gcc-Shello.c#生
- C++计算精解【20】
sakura_sea
游戏引擎与高性能计算c++开发语言
动手做汇编解释器【3】跳转语句增加了条件跳转指令,无条件跳转指令增加了cmp,没有这个指令,无法进行跳转intcmp_flag=0;作为cmp比较结果的标志位opcode_map是指令hash,所有支持的指令都在这个hash的key中,不在hash的key中的指令运行抛出异常。labels标签hash,记录标签标注指令的ip(索引)。instructions存放指令集。registers为寄存器。
- 深入理解Ping/Echo与心跳检测的
一休哥助手
软考系统架构师架构网络服务器运维
一、Ping/Echo与心跳检测概述1.1什么是Ping/EchoPing是一种基于ICMP(InternetControlMessageProtocol,互联网控制消息协议)的网络诊断工具,主要用于测试网络设备之间的连通性和响应时间。它通过向目标设备发送一个ICMPEcho请求(EchoRequest),目标设备收到后会返回一个ICMPEcho应答(EchoReply),从而让发送方得知目标设备
- ARM架构与ARM内核
tangYi0_0
#MCUARM架构ARM内核Cortex-M
参考:https://blog.csdn.net/qq_34160841/article/details/105611131到底什么是Cortex、ARMv8、arm架构、ARM指令集、soc?一文帮你梳理基础概念认识ARM、Cortex-M内核,以及ARMv8-M架构ARM架构ARM的架构指的是ARM的指令集架构。ARM指令集从1985年ARMv1架构诞生起,到2011年,ARM架构已经发展到了
- 3.17 角度
Source.Liu
开源CADArCSrustCADArCS
一、源码usecrate::approxeq::ApproxEq;usecrate::trig::Trig;usecore::cmp::{Eq,PartialEq};usecore::hash::Hash;usecore::iter::Sum;usecore::ops::{Add,AddAssign,Div,DivAssign,Mul,MulAssign,Neg,Rem,Sub,SubAssign
- ARM Cortex-A(armV8)编程手册V1.0:指令集与源码应用指南
AWS云计算
本文还有配套的精品资源,点击获取简介:ARMCortex-A(armV8)编程手册V1.0详细介绍了ARM架构的V8版本,提供了对armV8指令集的深入理解,强调了C和C++源码在实际开发中的应用。手册涵盖了armV8指令集增强,包括向量处理、浮点运算和内存访问优化等,以及新的安全特性如硬件虚拟化。通过C/C++示例,指导开发者如何编写高效代码,利用armV8架构的优势,并解释了内存一致性模型和并
- 基于UHST协议的网络通信Ping实现
金融先生-Frank
本文还有配套的精品资源,点击获取简介:网络通信中的ping命令是网络诊断工具的基础,传统上使用ICMP协议。本项目介绍了一个基于UHST(通用HTTP流传输)协议实现的ping功能,适合现代Web环境。UHST作为P2P通信协议,支持设备间直接交换数据,无需中心服务器,非常适合实时WebRTC应用。示例包括UHST主机创建、连接建立、消息传递、以及连接断开等关键步骤,使用原生JavaScript和
- Armv8&Armv9架构入门指南
牧雁照
Armv8&Armv9架构入门指南【下载地址】Armv8Armv9架构入门指南分享Armv8&Armv9架构入门指南欢迎阅读《Armv8&Armv9架构入门指南》,本指南专为对ARM处理器架构感兴趣的开发者、研究人员以及技术爱好者设计项目地址:https://gitcode.com/Open-source-documentation-tutorial/27e07欢迎阅读《Armv8&Armv9架构
- pythonasm库分析,看看你和自学编程小学生的差距
linhhanpy
pythonasmpython使用汇编python开发语言汇编前端
下面是pythonasm.asm库的源代码fromkeystoneimport*fromcapstoneimport*assembly_instructions=[]#储存汇编指令的列表#汇编指令写入列表defmov(reg1,reg2):assembly_instructions.append(f"mov{reg1},{reg2}")defdb(value):assembly_instructi
- 自制虚拟机(C/C++)(一、分析语法和easyx运用,完整虚拟机实现)
linhhanpy
自制虚拟机自制操作系统c语言c++单片机操作系统汇编
网上对虚拟机的解释很多,其实本质就一句话虚拟机就是机器语言解释器我们今天要实现汇编语言解释器,下一次再加上ndisasm反汇编器就是真正虚拟机了注:这里的虚拟机指的是VMware一类的,而不是JVM,python一样的高级语言解释器上代码#include#include#include#include#include#include#include#include#include#include/
- 老程序员的感慨
workflower
讲闲话人工智能
三十年前,我第一次在绿底黑字的终端机上看到'HelloWorld'闪烁时,心跳得比收到情书还快。那些年我们用十六进制与机器对话,在堆栈溢出前背诵内存地址,把咖啡渍滴落在泛黄的《算法导论》扉页上。记得为优化三行汇编代码熬到晨光熹微,机房空调的嗡鸣里,年轻的眼睛亮得能烧穿夜幕。如今IDE自动补全了所有思念,云服务吞噬了服务器轰鸣的心跳。抽屉深处藏着VB6的光盘、Delphi的破解狗,还有那本被翻烂的T
- 计算机系统大作业——程序人生
wdsjlinlin
p2pubuntu
计算机系统大作业题目程序人生-Hello’sP2P专业计算学部学号120L020925班级2003001学生林泽天指导教师史先俊计算机科学与技术学院2022年5月摘要本文通过对hello.c文件的逐步分析,包括预处理,编译,汇编,链接等等操作,来追踪从.c文件变为可执行程序文件的过程,并运行此文件,观察在进程中的相关状态,分析其对于异常和信号的处理,最后结束可执行文件,结束程序hello.c的一生
- 编译汇编链接--从此看懂之后遇到的每一个.ld链接文件
绒绒毛毛雨
MIT6.S081汇编c语言系统架构builderpattern
文章目录〇前言一、预备知识1.源代码文件(.c)➡️可执行文件2.汇编文件(.s)➡️可执行文件3.链接器脚本(.ld)二、基本语法1.ENTRY(程序的入口点)2.MEMORY(系统的内存布局)3.SECTIONS(各个段的布局)o.前置语法讲解.的含义ALIGN语句ASSERT语句PROVIDE语句a.`.text`段b.`.rodata`段c.`.data`段d.`.bss`段4.其他a.O
- 高阶C语言|深入理解字符串函数和内存函数
我想吃余
C语言篇c语言算法开发语言
文章目录前言1.求字符串长度1.1字符串长度函数:`strlen`模拟实现2.长度不受限制的字符串函数2.1字符串拷贝函数:`strcpy`模拟实现2.2字符串连接函数:`strcat`模拟实现2.3字符串比较函数:`strcmp`模拟实现3.长度受限制的字符串函数3.1`strncpy`3.2`strncat`3.3`strncmp`4.字符串查找4.1字符串查找函数:`strstr`模拟实现4
- 【Numpy核心编程攻略:Python数据处理、分析详解与科学计算】1.29 内存奥秘:跨语言内存管理实战
精通代码大仙
numpypythonnumpypython开发语言
1.29内存奥秘:跨语言内存管理实战目录内存奥秘:跨语言内存管理实战Cython内存视图高级用法与C++共享内存的案例使用tracemalloc调试内存泄漏SIMD指令的内存对齐自定义内存分配器内存映射的原子操作非对齐内存访问的性能影响优化非对齐内存访问的方法共享内存的安全性和效率内存管理的最佳实践1.29.1Cython内存视图高级用法1.29.2与C++共享内存的案例1.29.3使用trace
- prebuilt-ffmpeg-android: 为Android设备预先构建的FFmpeg支持多架构
古斯塔夫歼星炮
本文还有配套的精品资源,点击获取简介:FFmpeg是一个开源的多媒体处理框架,用于处理音频和视频的编码、解码、转换和流媒体操作。在Android平台上,由于多种硬件架构的存在,如armv7,armv7-neon,和x86,为应用集成FFmpeg通常需要复杂的交叉编译过程。prebuilt-ffmpeg-android项目预先为这些架构构建了FFmpeg库,简化了开发者的集成过程,从而避免了自己编译
- 在汇编语言中,ASSUME 是一个用于告诉汇编器如何将段寄存器与特定段名称关联的指令
laocooon523857886
算法汇编
在汇编语言中,ASSUME是一个用于告诉汇编器如何将段寄存器与特定段名称关联的指令。它主要用于定义代码段、数据段和栈段等的段寄存器使用方式,帮助编译器生成正确的代码。具体到ASSUMEDS:DATA,CS:CODE,SS:STACK,这行代码的作用如下:ASSUMEDS:DATA:告诉汇编器,数据段(DATA)应该与数据段寄存器(DS)关联。ASSUMECS:CODE:告诉汇编器,代码段(CODE
- 汇编考试基础速成
世间一剑
汇编
数码0~9的ASCII码:30H~39H大写字母A~Z:41H~5AH小写字母a~z:61H~7AH0dH:回车控制字符0aH:换行控制字符AH/ALAX称为累加器,用于算术与逻辑运算;与外设传送信息BH/BLBX称为基址寄存器,存放存储器地址;用于算术与逻辑运算CH/CLCX称为计数器,循环和串操作等指令中的隐含计数器;用于算术与逻辑运算DH/DLDX称为数据寄存器,存放双字长数据的高16位;存
- ARM汇编语言
qq_37770896
arm开发
汇编语言结构条件码(31-28)指令码(27-20)目的寄存器(19-16)操作数1寄存器(15-12)操作数2(11-0)操作码(Opcode):指示要执行的具体操作。不同的操作码代表不同的指令功能,例如数据传输、算术运算、逻辑运算等。目标寄存器(DestinationRegister):指定指令执行的结果将存储在哪个寄存器中。源操作数(SourceOperand):指定参与指令操作的源数据,可
- 第十六题:最接近的三数之和
冰魄雕狼
leetcode算法leetcode数据结构c语言pythonjava
题目描述给定一个包括n个整数的数组nums和一个目标值target。找出nums中的三个整数,使得它们的和与target最接近。返回这三个数的和。假定每组输入只存在唯一答案。示例:输入:nums=[-1,2,1,-4],target=1输出:2解释:与target最接近的和为2(-1+2+1=2)。注意:3intcmp(constvoid*a,constvoid*b){return(*(int*)
- 《极致C语言》第2章 -- 从源文件到二进制文件
Fyang0906
极致C语言学习笔记c语言c++
《极致C语言》第2章–从源文件到二进制文件extreme-c-learning-notesch2《极致C语言》第2章--从源文件到二进制文件《极致C语言》第2章--从源文件到二进制文件1.编译过程1.1.构建C项目1.2.第1步--预处理1.3第2步--编译1.4第3步--汇编1.5第4步--链接2.预处理器3.编译器4.汇编器5.链接器1.编译过程预处理器编译器汇编器链接器C源代码通过:预处理-
- 【C语言】库函数-字符串函数
Nebula嵌入式
C语言基础c语言linux
文章目录前言版本迭代strcpy函数strncpy函数strcat函数strncat函数(比较少使用)strcmp函数strncmp函数strcasecmp函数strncasecmp函数strchr函数(比较少使用)strrchr函数(几乎不使用)strspn函数(很少用)strcspn函数(没用过)strpbrk函数(很少用)strstr函数strlen函数strtok函数strsep函数str
- C++程序编译的过程及命名空间
__雨夜星辰__
C++学习之路c++开发语言visualstudio
C++程序编译的过程:预处理->编译(优化、汇编)->链接目录1.预处理一、包含头文件二、宏定义指令三、条件编译2、编译和链接一、源代码的组织二、编译预处理三、编译四、链接五、更多细节3、命名空间一、语法二、使用命名空间三、注意事项四、代码示例1.预处理预处理指令主要有以下三种:包含头文件:#include宏定义:#define(定义宏)、#undef(删除宏)。条件编译:#ifdef、#ifnd
- Customize ringtone on your iPhone
fareast_mzh
iphoneios
Tousean.mp3or.wavfileasacustomringtoneonyouriPhone,followthesesteps:Option1:UsingGarageBand(iPhoneOnly,Free)Thismethoddoesn’trequireacomputerandcanhandle.mp3or.wavfiles.DownloadtheSoundFile:Visitthesi
- tomcat基础与部署发布
暗黑小菠萝
Tomcat java web
从51cto搬家了,以后会更新在这里方便自己查看。
做项目一直用tomcat,都是配置到eclipse中使用,这几天有时间整理一下使用心得,有一些自己配置遇到的细节问题。
Tomcat:一个Servlets和JSP页面的容器,以提供网站服务。
一、Tomcat安装
安装方式:①运行.exe安装包
&n
- 网站架构发展的过程
ayaoxinchao
数据库应用服务器网站架构
1.初始阶段网站架构:应用程序、数据库、文件等资源在同一个服务器上
2.应用服务和数据服务分离:应用服务器、数据库服务器、文件服务器
3.使用缓存改善网站性能:为应用服务器提供本地缓存,但受限于应用服务器的内存容量,可以使用专门的缓存服务器,提供分布式缓存服务器架构
4.使用应用服务器集群改善网站的并发处理能力:使用负载均衡调度服务器,将来自客户端浏览器的访问请求分发到应用服务器集群中的任何
- [信息与安全]数据库的备份问题
comsci
数据库
如果你们建设的信息系统是采用中心-分支的模式,那么这里有一个问题
如果你的数据来自中心数据库,那么中心数据库如果出现故障,你的分支机构的数据如何保证安全呢?
是否应该在这种信息系统结构的基础上进行改造,容许分支机构的信息系统也备份一个中心数据库的文件呢?
&n
- 使用maven tomcat plugin插件debug关联源代码
商人shang
mavendebug查看源码tomcat-plugin
*首先需要配置好'''maven-tomcat7-plugin''',参见[[Maven开发Web项目]]的'''Tomcat'''部分。
*配置好后,在[[Eclipse]]中打开'''Debug Configurations'''界面,在'''Maven Build'''项下新建当前工程的调试。在'''Main'''选项卡中点击'''Browse Workspace...'''选择需要开发的
- 大访问量高并发
oloz
大访问量高并发
大访问量高并发的网站主要压力还是在于数据库的操作上,尽量避免频繁的请求数据库。下面简
要列出几点解决方案:
01、优化你的代码和查询语句,合理使用索引
02、使用缓存技术例如memcache、ecache将不经常变化的数据放入缓存之中
03、采用服务器集群、负载均衡分担大访问量高并发压力
04、数据读写分离
05、合理选用框架,合理架构(推荐分布式架构)。
- cache 服务器
小猪猪08
cache
Cache 即高速缓存.那么cache是怎么样提高系统性能与运行速度呢?是不是在任何情况下用cache都能提高性能?是不是cache用的越多就越好呢?我在近期开发的项目中有所体会,写下来当作总结也希望能跟大家一起探讨探讨,有错误的地方希望大家批评指正。
1.Cache 是怎么样工作的?
Cache 是分配在服务器上
- mysql存储过程
香水浓
mysql
Description:插入大量测试数据
use xmpl;
drop procedure if exists mockup_test_data_sp;
create procedure mockup_test_data_sp(
in number_of_records int
)
begin
declare cnt int;
declare name varch
- CSS的class、id、css文件名的常用命名规则
agevs
JavaScriptUI框架Ajaxcss
CSS的class、id、css文件名的常用命名规则
(一)常用的CSS命名规则
头:header
内容:content/container
尾:footer
导航:nav
侧栏:sidebar
栏目:column
页面外围控制整体布局宽度:wrapper
左右中:left right
- 全局数据源
AILIKES
javatomcatmysqljdbcJNDI
实验目的:为了研究两个项目同时访问一个全局数据源的时候是创建了一个数据源对象,还是创建了两个数据源对象。
1:将diuid和mysql驱动包(druid-1.0.2.jar和mysql-connector-java-5.1.15.jar)copy至%TOMCAT_HOME%/lib下;2:配置数据源,将JNDI在%TOMCAT_HOME%/conf/context.xml中配置好,格式如下:&l
- MYSQL的随机查询的实现方法
baalwolf
mysql
MYSQL的随机抽取实现方法。举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1。但是,后来我查了一下MYSQL的官方手册,里面针对RAND()的提示大概意思就是,在ORDER BY从句里面不能使用RAND()函数,因为这样会导致数据列被多次扫描。但是在MYSQL 3.23版本中,
- JAVA的getBytes()方法
bijian1013
javaeclipseunixOS
在Java中,String的getBytes()方法是得到一个操作系统默认的编码格式的字节数组。这个表示在不同OS下,返回的东西不一样!
String.getBytes(String decode)方法会根据指定的decode编码返回某字符串在该编码下的byte数组表示,如:
byte[] b_gbk = "
- AngularJS中操作Cookies
bijian1013
JavaScriptAngularJSCookies
如果你的应用足够大、足够复杂,那么你很快就会遇到这样一咱种情况:你需要在客户端存储一些状态信息,这些状态信息是跨session(会话)的。你可能还记得利用document.cookie接口直接操作纯文本cookie的痛苦经历。
幸运的是,这种方式已经一去不复返了,在所有现代浏览器中几乎
- [Maven学习笔记五]Maven聚合和继承特性
bit1129
maven
Maven聚合
在实际的项目中,一个项目通常会划分为多个模块,为了说明问题,以用户登陆这个小web应用为例。通常一个web应用分为三个模块:
1. 模型和数据持久化层user-core,
2. 业务逻辑层user-service以
3. web展现层user-web,
user-service依赖于user-core
user-web依赖于user-core和use
- 【JVM七】JVM知识点总结
bit1129
jvm
1. JVM运行模式
1.1 JVM运行时分为-server和-client两种模式,在32位机器上只有client模式的JVM。通常,64位的JVM默认都是使用server模式,因为server模式的JVM虽然启动慢点,但是,在运行过程,JVM会尽可能的进行优化
1.2 JVM分为三种字节码解释执行方式:mixed mode, interpret mode以及compiler
- linux下查看nginx、apache、mysql、php的编译参数
ronin47
在linux平台下的应用,最流行的莫过于nginx、apache、mysql、php几个。而这几个常用的应用,在手工编译完以后,在其他一些情况下(如:新增模块),往往想要查看当初都使用了那些参数进行的编译。这时候就可以利用以下方法查看。
1、nginx
[root@361way ~]# /App/nginx/sbin/nginx -V
nginx: nginx version: nginx/
- unity中运用Resources.Load的方法?
brotherlamp
unity视频unity资料unity自学unityunity教程
问:unity中运用Resources.Load的方法?
答:Resources.Load是unity本地动态加载资本所用的方法,也即是你想动态加载的时分才用到它,比方枪弹,特效,某些实时替换的图像什么的,主张此文件夹不要放太多东西,在打包的时分,它会独自把里边的一切东西都会集打包到一同,不论里边有没有你用的东西,所以大多数资本应该是自个建文件放置
1、unity实时替换的物体即是依据环境条件
- 线段树-入门
bylijinnan
java算法线段树
/**
* 线段树入门
* 问题:已知线段[2,5] [4,6] [0,7];求点2,4,7分别出现了多少次
* 以下代码建立的线段树用链表来保存,且树的叶子结点类似[i,i]
*
* 参考链接:http://hi.baidu.com/semluhiigubbqvq/item/be736a33a8864789f4e4ad18
* @author lijinna
- 全选与反选
chicony
全选
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>全选与反选</title>
- vim一些简单记录
chenchao051
vim
mac在/usr/share/vim/vimrc linux在/etc/vimrc
1、问:后退键不能删除数据,不能往后退怎么办?
答:在vimrc中加入set backspace=2
2、问:如何控制tab键的缩进?
答:在vimrc中加入set tabstop=4 (任何
- Sublime Text 快捷键
daizj
快捷键sublime
[size=large][/size]Sublime Text快捷键:Ctrl+Shift+P:打开命令面板Ctrl+P:搜索项目中的文件Ctrl+G:跳转到第几行Ctrl+W:关闭当前打开文件Ctrl+Shift+W:关闭所有打开文件Ctrl+Shift+V:粘贴并格式化Ctrl+D:选择单词,重复可增加选择下一个相同的单词Ctrl+L:选择行,重复可依次增加选择下一行Ctrl+Shift+L:
- php 引用(&)详解
dcj3sjt126com
PHP
在PHP 中引用的意思是:不同的名字访问同一个变量内容. 与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容在内存中存放的地址 变量的引用 PHP 的引用允许你用两个变量来指向同一个内容 复制代码代码如下:
<?
$a="ABC";
$b =&$a;
echo
- SVN中trunk,branches,tags用法详解
dcj3sjt126com
SVN
Subversion有一个很标准的目录结构,是这样的。比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是svn://proj/|+-trunk+-branches+-tags这是一个标准的布局,trunk为主开发目录,branches为分支开发目录,tags为tag存档目录(不允许修改)。但是具体这几个目录应该如何使用,svn并没有明确的规范,更多的还是用户自己的习惯。
- 对软件设计的思考
e200702084
设计模式数据结构算法ssh活动
软件设计的宏观与微观
软件开发是一种高智商的开发活动。一个优秀的软件设计人员不仅要从宏观上把握软件之间的开发,也要从微观上把握软件之间的开发。宏观上,可以应用面向对象设计,采用流行的SSH架构,采用web层,业务逻辑层,持久层分层架构。采用设计模式提供系统的健壮性和可维护性。微观上,对于一个类,甚至方法的调用,从计算机的角度模拟程序的运行情况。了解内存分配,参数传
- 同步、异步、阻塞、非阻塞
geeksun
非阻塞
同步、异步、阻塞、非阻塞这几个概念有时有点混淆,在此文试图解释一下。
同步:发出方法调用后,当没有返回结果,当前线程会一直在等待(阻塞)状态。
场景:打电话,营业厅窗口办业务、B/S架构的http请求-响应模式。
异步:方法调用后不立即返回结果,调用结果通过状态、通知或回调通知方法调用者或接收者。异步方法调用后,当前线程不会阻塞,会继续执行其他任务。
实现:
- Reverse SSH Tunnel 反向打洞實錄
hongtoushizi
ssh
實際的操作步驟:
# 首先,在客戶那理的機器下指令連回我們自己的 Server,並設定自己 Server 上的 12345 port 會對應到幾器上的 SSH port
ssh -NfR 12345:localhost:22
[email protected]
# 然後在 myhost 的機器上連自己的 12345 port,就可以連回在客戶那的機器
ssh localhost -p 1
- Hibernate中的缓存
Josh_Persistence
一级缓存Hiberante缓存查询缓存二级缓存
Hibernate中的缓存
一、Hiberante中常见的三大缓存:一级缓存,二级缓存和查询缓存。
Hibernate中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存是由hibernate管理的,一般情况下无需进行干预;第二级别的缓存是SessionFactory级别的缓存,它是属于进程范围或群集范围的缓存。这一级别的缓存
- 对象关系行为模式之延迟加载
home198979
PHP架构延迟加载
形象化设计模式实战 HELLO!架构
一、概念
Lazy Load:一个对象,它虽然不包含所需要的所有数据,但是知道怎么获取这些数据。
延迟加载貌似很简单,就是在数据需要时再从数据库获取,减少数据库的消耗。但这其中还是有不少技巧的。
二、实现延迟加载
实现Lazy Load主要有四种方法:延迟初始化、虚
- xml 验证
pengfeicao521
xmlxml解析
有些字符,xml不能识别,用jdom或者dom4j解析的时候就报错
public static void testPattern() {
// 含有非法字符的串
String str = "Jamey친ÑԂ
- div设置半透明效果
spjich
css半透明
为div设置如下样式:
div{filter:alpha(Opacity=80);-moz-opacity:0.5;opacity: 0.5;}
说明:
1、filter:对win IE设置半透明滤镜效果,filter:alpha(Opacity=80)代表该对象80%半透明,火狐浏览器不认2、-moz-opaci
- 你真的了解单例模式么?
w574240966
java单例设计模式jvm
单例模式,很多初学者认为单例模式很简单,并且认为自己已经掌握了这种设计模式。但事实上,你真的了解单例模式了么。
一,单例模式的5中写法。(回字的四种写法,哈哈。)
1,懒汉式
(1)线程不安全的懒汉式
public cla