- 高流量Web服务器Kubernetes架构优化
完颜振江
前端服务器kubernetes
一、基础设施层优化1.节点自动扩展策略#集群自动扩缩容配置(GKE示例)apiVersion:clusterautoscaler.kubernetes.io/v1beta2kind:AutoscalingPolicymetadata:name:web-cluster-policyspec:minNodeCount:5maxNodeCount:50scaleDown:utilizationThres
- LLaMA-Factory 安装linux部署&conda笔记
jayxlb2
llama笔记ai
第一行代码是我导入https://github.com/hiyouga/LLaMA-Factory.git到我的项目那里的,试过网上随便搜索过相同,估计没更新,安装了几次都运行失败,克隆了最新的就安装成功了。方法1没虚拟环境:不知道成不成功,我使用conda管理安装的gitclonehttps://gitcode.com/wengxiezhen2671/LLaMA-Factory.gitcdLLa
- 开源大模型性能追平闭源模型技术路径分析
Mr' 郑
开源
(预测实现时间:2025Q2)开源模型进化路径MoE架构稀疏训练分布式RLHF2024突破2023现状2025超越性能反超一、现状对比与瓶颈分析(2024Q3)1.核心差距量化指标能力维度闭源模型均值开源模型均值差距比例复杂推理(MMLU)86.7%79.2%8.7%代码生成(HumanEval)89.1%81.4%8.5%长文本理解(NarrativeQA)82.3%73.9%10.2%多模态理
- MySQL 运维篇 -- 主从集群搭建
L小Ray想有腮
MySQLmysql运维数据库
文章目录主从复制主从复制原理主从故障处理延时从库主从GTID复制主从GR复制*****搭建组复制观察组复制主从复制主从同步过程(1)主丛复制基于binlog来实现的(2)主库发生新的操作,都会记录binlog(3)从库取得主库的binlog进行回放(4)主从复制是异步的准备主从的初始MySQL环境(YUM安装)[root@master~]#hostnamemaster[root@master~]#
- Memcached服务器UDP反射放大攻击
weixin_30639719
memcached网络操作系统
1、前言2月28日,Memcache服务器被曝出存在UDP反射放大攻击漏洞。攻击者可利用这个漏洞来发起大规模的DDoS攻击,从而影响网络正常运行。漏洞的形成原因为Memcache服务器UDP协议支持的方式不安全、默认配置中将UDP端口暴露给外部链接。2、原理分析这个漏洞的攻击方式属于DRDOS(DistributedReflectionDenialofService)分布式反射拒绝服务攻击。DRD
- linux命令 查看文件行号的几种方式
乐观主义现代人
Linux基础#命令行linuxbash运维
1.vimfileName这是一种最基本的方法,打开文件看行号一次跳到最后,同样的gg是跳到开始**注意:**如果没有设置显示行号需要打开文件以后输入:setnumber;或者通过设置.vimrc,这种方式需要退出窗口重新登录生效。2.cat-nfileName[xiaodong@localhost~]$cat-ncat-demo1dsklnnsdklgh2dfbmnsldkgnd3fdsg3.w
- golang x509 cannot validate certificate for 192.168.2.2 because it doesn‘t contain any IP SANs
乐观主义现代人
golang服务器网络golang
此问题主要出现在有cert验证的场景中,有两种解决方案:1.修改发出请求的设备的/etc/hosts文件(这种解决方案偏运维思维,能解决问题就行)#按照要求修改/etc/hosts文件,将IP映射成符合规则的serverNameroot@SC-Server:/opt/scenter#cat/etc/hosts127.0.0.1localhost127.0.0.1SC-Server#追加内容192.
- Linux及其系列分别怎么念?
硬件王哪跑
嵌入式硬件软硬件名词概念解析linux运维服务器
直接干货Linux一词,根据其创造者LinusTorvalds的发音应读作“li-nacks”,国际音标为[’li:nэks],重音落在“na”上。解析为中式密咒------里那克死ubuntu是一个Linux的发行版本,由debian衍生而来。解析为中式密咒------午搬土
- linux系统测试网络pps、带宽和延时(方案来源于阿里云)
乐观主义现代人
linux网络阿里云
此方案来源于阿里云pps测试步骤分别在测试机和辅助测试机上执行以下命令,下载Netperf。wgethttps://benchmark-packages.oss-cn-qingdao.aliyuncs.com/netperf-2.7.0.tar.gz分别在测试机和辅助测试机上执行以下命令,安装Netperf和sar监控工具。sudoyuminstall-ygccautoconfautomakeli
- 架构师面试(二):计算机编程基础
棕生
架构师面试架构师面试协程操作系统epollIOCPsocket编程
问题(该题目考察计算机编程基础,看看大家在学生期间有没有认真上课)下面说法正确的有哪几项?A、协程在创建、切换和销毁时,操作系统都是无法感知的;B、理论上讲,用户应用程序是可以脱离操作系统运行起来的;C、Linux下的epoll是同步IO模型,Windows下的IOCP是异步IO模型;D、在TCP网络编程中,相对于单线程来说,多个线程同时写socket效率是更高的。解析A选项:协程是轻量级的用户级
- ELK架构基础
skyQAQLinux
linuxelk
ELK知识点一、Elasticsearch(一)基本概念分布式搜索引擎基于Lucene的分布式、RESTful风格的搜索和分析引擎,能快速存储、搜索和分析海量数据。索引(Index)类似于传统数据库中的数据库,是文档的集合。一个Elasticsearch集群可包含多个索引。类型(Type)在Elasticsearch6.x之前,一个索引可包含多个类型,类似数据库中的表。从7.x开始,类型被废弃,一
- Linux nftables 命令使用详解
linux
简介nftables是iptables、ip6tables、arptables和ebtables的继承者,用于管理Linux中的包过滤和网络地址转换。它提供了一种更现代、更灵活和更有效的方式来配置防火墙,取代了旧的工具。nftables在Linux内核3.13及以上版本中可用,它是nft包的一部分。用于配置nftables的主要命令行工具是nft。基本概念Tables:用于组织规则的容器。每个表可
- 【Linux】常见面试题2023版
菜鸟进阶站
Linuxlinux运维服务器
1.查看文件内容 cat tail head less more2.几个查看文件内容的命令有什么区别 cat文件名#将文件内的内容全部打印出来,cat文件1文件2先将文件1全部法印,然后在打印文件2 more文件名 #分屏查看 less文件名 #上下分页查看 head文件名#从头看默认显示前10行 tail文件名 #从末尾看默认显示后10行3.统计文件内行数 wc-l文件名4.统计文件文本字节数
- 最新 CentOS7 上使用 yum 安装 MySQL8 超详细教程
zp8126
linuxlinuxmysqljavapython
CentOS7使用yum安装MySQL8CentOS9上源码方式安装mysql8教程需要本文pdf文档,可以直接下载:链接:https://pan.quark.cn/s/df2ff3e10adf「Linux版本mysql8源码安装包」,点击链接即可保存。链接:https://pan.quark.cn/s/0941a31f719a「Linux教程详细笔记」,点击链接即可保存。链接:https://p
- linux 使用readelf命令查看.so动态库的真实名
wocjj
linux命令
linuxstrip可以去除链接信息让nm看不到但是readelf用-s参数仍然可以看到例如readelf-slibACE-5.7.1.so使用readelf查看动态库的真实名字readelf-d动态库文件查看共享库的依赖库(NEEDED)和搜索名(SONAME)。readelf-d例如:#readelf-dlibuClibc-0.9.30rc2.soDynamicsectionatoffset0
- Ubuntu 上安装和配置 Apache RocketMQ 4.7.1
java 凯
ubuntuapacherocketmq
在Ubuntu上安装和配置ApacheRocketMQ4.7.1需要以下步骤。RocketMQ是一个分布式消息队列系统,通常需要安装Namesrv(NameServer)和Broker组件。1.系统准备更新系统和安装依赖运行以下命令更新系统并安装必要的依赖项:sudoaptupdate&&sudoaptupgrade-ysudoaptinstall-yopenjdk-8-jdkwgetunzipR
- linux下ffmpeg编译成so文件,Mac 编译FFmpeg成一个SO库
灰先森
FFmpeg使用第三步,编译FFmpeg成一个SO库.编译环境macOSHighSierri10.13.3android-ndk-r14bFFmpeg3.4.2简介由于ffmpeg编译的so数目繁多,直接使用这些类库还是比较麻烦的.因此可以将它们合并为一个类库libffmpeg.so.操作步骤与编译多个so的脚本不同,这个脚本不再需要修改Configure的内容(生成的是.a而不是.so,并没有涉
- Linux系统编程:网络编程与Socket通信详解
Dev-Kilig
Linuxlinux网络运维
引言网络编程是Linux系统编程的核心内容之一,而Socket是实现网络通信的基石。无论是Web服务器、即时通讯工具还是分布式系统,都依赖于Socket进行数据传输。本文将深入讲解Socket编程的基本概念,并通过C语言实现一个完整的TCP客户端-服务器通信示例,帮助初学者掌握网络编程的核心技能。一、Socket编程基础1.1什么是Socket?Socket(套接字)是网络通信的端点,用于在不同主
- 支持Windows和Linux系统的Python定时关机脚本
星河776(重名区分)
python
以下是一个支持Windows和Linux系统的Python定时关机脚本,允许设置定时关机或取消关机计划:importsysimportosimportdatetimeimportctypesimportredefis_admin():"""检查是否具有管理员权限"""ifos.name=='nt':try:returnctypes.windll.shell32.IsUserAnAdmin()exc
- 常见的几种设计模式(详细)——应用场景和实现方式
QiuYanping_
设计模式单例模式观察者模式工厂方法模式装饰器模式策略模式责任链模式
文章目录单例模式应用实现工厂模式应用实现❓策略模式应用实现⚖️代理模式应用实现观察者模式(发布订阅模式)应用实现装饰器模式应用实现模版方法模式应用实现⛓️责任链模式应用实现单例模式整个程序运行过程中,类只有一个实例,减少内存消耗应用资源管理:需要共享的资源如数据库连接池、线程池等,确保只有一个实例管理这些资源全局配置:配置类日志记录器:在多线程或分布式环境中确保日志记录器唯一性实现实现时注意:构
- Python在DevOps中的应用:自动化CI/CD管道的实现
蒙娜丽宁
Python杂谈pythonjavascript开发语言
《PythonOpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门!解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界在现代软件开发中,DevOps理念的引入极大地提升了开发与运维的协作效率,而持续集成(CI)与持续部署(CD)则是其核心实践之一。Python作为一种简洁高效的编程语言,凭借其丰富的库和灵活性,成为实现自动化CI/CD管道的理想选择。本文深入探讨了如何利
- Linux下安装使用f.lux
NearXDU
杂谈fluxubuntu
f.lux:全天候保护你的眼睛。Windows下用起来非常好了,最近在Ubuntu工作比较多,就想装一个Linux版本的。环境:Ubuntu14.0464位步骤:1.添加PPA到系统sudoadd-apt-repositoryppa:kilian/f.lux错误:unabletolocatepackageadd-apt-repository上网查了一下需要先安装python-software-pr
- 在docker容器内部访问主机服务
吃肉夹馍不要夹馍
其他dockereureka容器
(仅对与linux系统)希望在容器内部能够访问主机上的服务,比如在主机上部署了某服务A监听了端口11434:localhost:11434。此时通过docker部署了另外一个服务B,服务B希望能够访问主机上的服务A,由于docker有内部网络的原因,在容器内部无法直接访问主机IP。docker20增加了解决办法解决方法1,添加host.docker.internal如果是dockerrun启动,在
- catchadmin-webman 宝塔 部署
Go的神秘男朋友
php
1:宝塔的php中删除禁用函数putenv问题:按照文档部署的时候linux(php)+vue(本地)无法访问后端api/login的接口。解决办法:webman没有配置nginx反向代理配置就能正常访问了
- WSL2安装ubuntu20.04LTS
想要好名字
ubuntu
参考本文EESAST|清华大学电子工程系学生科协|EESΛSTDocs需要补充一条就是创建用户的时候参考这条Linux创建用户和删除用户_adduser:pleaseenterausernamematchingtheregu-CSDN博客
- 人工智能爆火下,关于软件技术专业的发展思考
yzx991013
人工智能
软件技术专业作为信息技术领域的核心学科,其发展方向始终与技术进步和社会需求紧密相关。以下是软件技术专业未来发展的关键方向及学习建议:一、技术方向与前沿领域1.云原生与分布式架构方向:云原生技术(Kubernetes、Docker、Serverless)、微服务架构、分布式系统设计。原因:企业全面上云已成趋势,需要高效、弹性的云原生解决方案。学习建议:掌握AWS/Azure/GCP等云平台,学习服务
- 量化交易技术简介
0010000100
linux
量化交易1.C++技术栈高频交易和低延迟系统对C++和Linux内核的要求极高,需要高效的代码执行、低延迟的通信机制、以及对操作系统底层的深入优化。以下是关键技术点:1.C++技术栈高频交易需要极致的性能优化,因此C++代码需要低延迟、高吞吐,通常采用以下技术:(1)高性能数据结构•Lock-free数据结构(无锁队列、环形缓冲区)•采用std::atomic和内存屏障(memorybarrier
- 部署node后端服务
做一颗卷心菜
node.js
①环境介绍服务器:Linuxnode>=18.0②安装Node创建一个目录mkdirnode进入node目录下,下载压缩包wgethttps://nodejs.org/dist/v18.20.3/node-v18.20.3-linux-x64.tar.xz③解压文件tar-xvJfnode-v18.20.3-linux-x64.tar.xz④创建软连接ln-s/node/node-v18.20.3
- 快速设置 Docker 网络代理配置
lcz-2000
docker网络容器
DockerClient-代理访问远程的DockerDaemon在Client端设置代理其实就是设置Linux系统的代理,从而让系统的命令行可以通过代理连接到外部的网络。一般只需要配置HTTP_PROXY与HTTPS_PROXY这两个即可。临时生效:在命令行中执行下面的命令,根据自己实际代理IP与代理端口设置(需要允许局域网连接):exporthttps_proxy=http://127.0.0.
- 利用Shell指令通过函数获取用户UID
嘿嘿就是写!
服务器数据库linux
一、引言在Unix和Linux操作系统中,每个用户都有一个唯一的标识符(UID)。UID是用户账号的一个重要属性,用于区分不同的用户。在Shell脚本中,我们经常需要获取特定用户的UID。通过编写一个简单的Shell函数,我们可以轻松地获取任何用户的UID。二、获取用户UID的Shell函数以下是一个简单的Shell函数,用于获取指定用户的UID:get_user_uid(){#参数为用户名use
- java Illegal overloaded getter method with ambiguous type for propert的解决
zwllxs
javajdk
好久不来iteye,今天又来看看,哈哈,今天碰到在编码时,反射中会抛出
Illegal overloaded getter method with ambiguous type for propert这么个东东,从字面意思看,是反射在获取getter时迷惑了,然后回想起java在boolean值在生成getter时,分别有is和getter,也许我们的反射对象中就有is开头的方法迷惑了jdk,
- IT人应当知道的10个行业小内幕
beijingjava
工作互联网
10. 虽然IT业的薪酬比其他很多行业要好,但有公司因此视你为其“佣人”。
尽管IT人士的薪水没有互联网泡沫之前要好,但和其他行业人士比较,IT人的薪资还算好点。在接下的几十年中,科技在商业和社会发展中所占分量会一直增加,所以我们完全有理由相信,IT专业人才的需求量也不会减少。
然而,正因为IT人士的薪水普遍较高,所以有些公司认为给了你这么多钱,就把你看成是公司的“佣人”,拥有你的支配
- java 实现自定义链表
CrazyMizzz
java数据结构
1.链表结构
链表是链式的结构
2.链表的组成
链表是由头节点,中间节点和尾节点组成
节点是由两个部分组成:
1.数据域
2.引用域
3.链表的实现
&nbs
- web项目发布到服务器后图片过一会儿消失
麦田的设计者
struts2上传图片永久保存
作为一名学习了android和j2ee的程序员,我们必须要意识到,客服端和服务器端的交互是很有必要的,比如你用eclipse写了一个web工程,并且发布到了服务器(tomcat)上,这时你在webapps目录下看到了你发布的web工程,你可以打开电脑的浏览器输入http://localhost:8080/工程/路径访问里面的资源。但是,有时你会突然的发现之前用struts2上传的图片
- CodeIgniter框架Cart类 name 不能设置中文的解决方法
IT独行者
CodeIgniterCart框架
今天试用了一下CodeIgniter的Cart类时遇到了个小问题,发现当name的值为中文时,就写入不了session。在这里特别提醒一下。 在CI手册里也有说明,如下:
$data = array(
'id' => 'sku_123ABC',
'qty' => 1,
'
- linux回收站
_wy_
linux回收站
今天一不小心在ubuntu下把一个文件移动到了回收站,我并不想删,手误了。我急忙到Nautilus下的回收站中准备恢复它,但是里面居然什么都没有。 后来我发现这是由于我删文件的地方不在HOME所在的分区,而是在另一个独立的Linux分区下,这是我专门用于开发的分区。而我删除的东东在分区根目录下的.Trash-1000/file目录下,相关的删除信息(删除时间和文件所在
- jquery回到页面顶端
知了ing
htmljquerycss
html代码:
<h1 id="anchor">页面标题</h1>
<div id="container">页面内容</div>
<p><a href="#anchor" class="topLink">回到顶端</a><
- B树、B-树、B+树、B*树
矮蛋蛋
B树
原文地址:
http://www.cnblogs.com/oldhorse/archive/2009/11/16/1604009.html
B树
即二叉搜索树:
1.所有非叶子结点至多拥有两个儿子(Left和Right);
&nb
- 数据库连接池
alafqq
数据库连接池
http://www.cnblogs.com/xdp-gacl/p/4002804.html
@Anthor:孤傲苍狼
数据库连接池
用MySQLv5版本的数据库驱动没有问题,使用MySQLv6和Oracle的数据库驱动时候报如下错误:
java.lang.ClassCastException: $Proxy0 cannot be cast to java.sql.Connec
- java泛型
百合不是茶
java泛型
泛型
在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,任意化的缺点就是要实行强制转换,这种强制转换可能会带来不安全的隐患
泛型的特点:消除强制转换 确保类型安全 向后兼容
简单泛型的定义:
泛型:就是在类中将其模糊化,在创建对象的时候再具体定义
class fan
- javascript闭包[两个小测试例子]
bijian1013
JavaScriptJavaScript
一.程序一
<script>
var name = "The Window";
var Object_a = {
name : "My Object",
getNameFunc : function(){
var that = this;
return function(){
- 探索JUnit4扩展:假设机制(Assumption)
bijian1013
javaAssumptionJUnit单元测试
一.假设机制(Assumption)概述 理想情况下,写测试用例的开发人员可以明确的知道所有导致他们所写的测试用例不通过的地方,但是有的时候,这些导致测试用例不通过的地方并不是很容易的被发现,可能隐藏得很深,从而导致开发人员在写测试用例时很难预测到这些因素,而且往往这些因素并不是开发人员当初设计测试用例时真正目的,
- 【Gson四】范型POJO的反序列化
bit1129
POJO
在下面这个例子中,POJO(Data类)是一个范型类,在Tests中,指定范型类为PieceData,POJO初始化完成后,通过
String str = new Gson().toJson(data);
得到范型化的POJO序列化得到的JSON串,然后将这个JSON串反序列化为POJO
import com.google.gson.Gson;
import java.
- 【Spark八十五】Spark Streaming分析结果落地到MySQL
bit1129
Stream
几点总结:
1. DStream.foreachRDD是一个Output Operation,类似于RDD的action,会触发Job的提交。DStream.foreachRDD是数据落地很常用的方法
2. 获取MySQL Connection的操作应该放在foreachRDD的参数(是一个RDD[T]=>Unit的函数类型),这样,当foreachRDD方法在每个Worker上执行时,
- NGINX + LUA实现复杂的控制
ronin47
nginx lua
安装lua_nginx_module 模块
lua_nginx_module 可以一步步的安装,也可以直接用淘宝的OpenResty
Centos和debian的安装就简单了。。
这里说下freebsd的安装:
fetch http://www.lua.org/ftp/lua-5.1.4.tar.gz
tar zxvf lua-5.1.4.tar.gz
cd lua-5.1.4
ma
- java-递归判断数组是否升序
bylijinnan
java
public class IsAccendListRecursive {
/*递归判断数组是否升序
* if a Integer array is ascending,return true
* use recursion
*/
public static void main(String[] args){
IsAccendListRecursiv
- Netty源码学习-DefaultChannelPipeline2
bylijinnan
javanetty
Netty3的API
http://docs.jboss.org/netty/3.2/api/org/jboss/netty/channel/ChannelPipeline.html
里面提到ChannelPipeline的一个“pitfall”:
如果ChannelPipeline只有一个handler(假设为handlerA)且希望用另一handler(假设为handlerB)
来
- Java工具之JPS
chinrui
java
JPS使用
熟悉Linux的朋友们都知道,Linux下有一个常用的命令叫做ps(Process Status),是用来查看Linux环境下进程信息的。同样的,在Java Virtual Machine里面也提供了类似的工具供广大Java开发人员使用,它就是jps(Java Process Status),它可以用来
- window.print分页打印
ctrain
window
function init() {
var tt = document.getElementById("tt");
var childNodes = tt.childNodes[0].childNodes;
var level = 0;
for (var i = 0; i < childNodes.length; i++) {
- 安装hadoop时 执行jps命令Error occurred during initialization of VM
daizj
jdkhadoopjps
在安装hadoop时,执行JPS出现下面错误
[slave16]root@192.168.11.10:/tmp/hsperfdata_hdfs# jps
Error occurred during initialization of VM
java.lang.Error: Properties init: Could not determine current working
- PHP开发大型项目的一点经验
dcj3sjt126com
PHP重构
一、变量 最好是把所有的变量存储在一个数组中,这样在程序的开发中可以带来很多的方便,特别是当程序很大的时候。变量的命名就当适合自己的习惯,不管是用拼音还是英语,至少应当有一定的意义,以便适合记忆。变量的命名尽量规范化,不要与PHP中的关键字相冲突。 二、函数 PHP自带了很多函数,这给我们程序的编写带来了很多的方便。当然,在大型程序中我们往往自己要定义许多个函数,几十
- android笔记之--向网络发送GET/POST请求参数
dcj3sjt126com
android
使用GET方法发送请求
private static boolean sendGETRequest (String path,
Map<String, String> params) throws Exception{
//发送地http://192.168.100.91:8080/videoServi
- linux复习笔记 之bash shell (3) 通配符
eksliang
linux 通配符linux通配符
转载请出自出处:
http://eksliang.iteye.com/blog/2104387
在bash的操作环境中有一个非常有用的功能,那就是通配符。
下面列出一些常用的通配符,如下表所示 符号 意义 * 万用字符,代表0个到无穷个任意字符 ? 万用字符,代表一定有一个任意字符 [] 代表一定有一个在中括号内的字符。例如:[abcd]代表一定有一个字符,可能是a、b、c
- Android关于短信加密
gqdy365
android
关于Android短信加密功能,我初步了解的如下(只在Android应用层试验):
1、因为Android有短信收发接口,可以调用接口完成短信收发;
发送过程:APP(基于短信应用修改)接受用户输入号码、内容——>APP对短信内容加密——>调用短信发送方法Sm
- asp.net在网站根目录下创建文件夹
hvt
.netC#hovertreeasp.netWeb Forms
假设要在asp.net网站的根目录下建立文件夹hovertree,C#代码如下:
string m_keleyiFolderName = Server.MapPath("/hovertree");
if (Directory.Exists(m_keleyiFolderName))
{
//文件夹已经存在
return;
}
else
{
try
{
D
- 一个合格的程序员应该读过哪些书
justjavac
程序员书籍
编者按:2008年8月4日,StackOverflow 网友 Bert F 发帖提问:哪本最具影响力的书,是每个程序员都应该读的?
“如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本, 你会选择哪本书呢?我希望这个书单列表内容丰富,可以涵盖很多东西。”
很多程序员响应,他们在推荐时也写下自己的评语。 以前就有国内网友介绍这个程序员书单,不过都是推荐数
- 单实例实践
跑龙套_az
单例
1、内部类
public class Singleton {
private static class SingletonHolder {
public static Singleton singleton = new Singleton();
}
public Singleton getRes
- PO VO BEAN 理解
q137681467
VODTOpo
PO:
全称是 persistant object持久对象 最形象的理解就是一个PO就是数据库中的一条记录。 好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。
BO:
全称是 business object:业务对象 主要作用是把业务逻辑封装为一个对象。这个对
- 战胜惰性,暗自努力
金笛子
努力
偶然看到一句很贴近生活的话:“别人都在你看不到的地方暗自努力,在你看得到的地方,他们也和你一样显得吊儿郎当,和你一样会抱怨,而只有你自己相信这些都是真的,最后也只有你一人继续不思进取。”很多句子总在不经意中就会戳中一部分人的软肋,我想我们每个人的周围总是有那么些表现得“吊儿郎当”的存在,是否你就真的相信他们如此不思进取,而开始放松了对自己的要求随波逐流呢?
我有个朋友是搞技术的,平时嘻嘻哈哈,以
- NDK/JNI二维数组多维数组传递
wenzongliang
二维数组jniNDK
多维数组和对象数组一样处理,例如二维数组里的每个元素还是一个数组 用jArray表示,直到数组变为一维的,且里面元素为基本类型,去获得一维数组指针。给大家提供个例子。已经测试通过。
Java_cn_wzl_FiveChessView_checkWin( JNIEnv* env,jobject thiz,jobjectArray qizidata)
{
jint i,j;
int s