- 瑞芯微RK3288、RK3399、RK3568、RK3368芯片性能介绍与对比分析
不对法
硬件编程嵌入式硬件linux单片机mcu
目录标题RK3568RK3288RK3368RK3399RK3568是瑞芯微2020年底最新发布的一款定位中高端的通用型SoC,采用22nm工艺制程,支持Android11和Linux操作系统(Linux+qt/Fedora/Debian/Ubuntu),主要面向行业应用市场,如视频会议、智慧安防、商业显示、边缘计算、物联网网关、视频编解码等领域。集成4核arm架构A55处理器和MaliG522E
- RK3399 驱动开发 _ 07 - ADC 开发
chenkanuo
驱动开发
文章目录前言一、ADC简介二、ADC配置1.dts节点配置2.重新编译并烧录三、ADC值获取1.计算采集到的电压2.获取ADC值在这里插入图片描述总结前言在RK3399平台开发过程中,经常需要用到ADC功能。例如:检测主板温度、复位/音量按键、DRAMID检测等。一、ADC简介RK3399板卡上常见的AD接口有2种:温度传感器(TemperatureSensor)、逐次逼近ADC(Successi
- RKNN-Toolkit 开源项目教程
彭宏彬
RKNN-Toolkit开源项目教程rknn-toolkit项目地址:https://gitcode.com/gh_mirrors/rk/rknn-toolkit1.项目介绍RKNN-Toolkit是一款由Rockchip开发的软件工具包,旨在为开发者提供模型转换、推理以及性能评估等功能,支持在PC和RockchipNPU平台(包括RK1808/RK1806/RK3399Pro/RV1109/RV
- RK3399平台开发系列讲解(内存篇)15.17、物理内存的组织形式
内核笔记
#子类__内存管理篇
平台内核版本安卓版本RK3399Linux4.4Android7.1=>返回专栏总目录<=文章目录一、两种内存访问架构二、物理内存布局Linux内核将物理内存简单的分为两部分:用户物理内存空间和内核物理内存空间当用户进程需要访问物理内存时,通过虚拟地址映射到用户物理内存空间这篇博客简单的介绍物理内存组织的相关概念和数据结构。一、两种内存访问架构
- linux内核未定义的引用,变异内核,出现“未定义的引用”问题
weixin_39557813
linux内核未定义的引用
drivers/built-in.o:在函数‘mmc_blk_drm_part_get’中:/home/zouxf/project/rk3399/rk_linux_sdk/kernel/drivers/char/drm/core.c:340:对‘_mcount’未定义的引用/home/zouxf/project/rk3399/rk_linux_sdk/kernel/drivers/char/drm
- [RK-Linux] RK3399启动流程详解
嵌入式逍遥
嵌入式Linux开发RK3399Linux开发linux运维服务器rk3399嵌入式u-boot
一、SoC启动流程1.1BootROM介绍在嵌入式系统中,SoC(SystemonChip)制造商通常会在芯片内部集成一段固化的启动代码,这段代码被称为BootROM,它负责系统的最初级启动程序。1.1.1初始化硬件当SoC上电时,首先由BootROM接管系统,其首要任务是初始化硬件环境。这包括配置CPU、关闭看门狗定时器、初始化系统时钟以及初始化必要的外设,如USB控制器、MMC控制器、NAND
- 【RK3399】【Uboot】 流程分析之常用宏定义说明
岁月如诗,光阴荏苒
嵌入式学习
1、内核等固件加载地址:ENV_MEM_LAYOUT_SETTINGS,定义如下./include/configs/rk3399_common.h58#defineENV_MEM_LAYOUT_SETTINGS\59"scriptaddr=0x00500000\0"\60"pxefile_addr_r=0x00600000\0"\61"fdt_addr_r=0x08300000\0"\62"ker
- 利用gdb定位线程栈被破坏场景: Backtrace stopped
IT老兵2025
捉虫记linuxc++c语言嵌入式硬件arm开发
以前在实验室调测RK3399模块时碰到的一个程序启动时小概率异常问题,当时使用gdb重现了该问题,使用“bt”命令查看该异常线程栈信息提示:”Backtracestopped:previousframeidenticaltothisframe(corruptstack?)”,无法看到完整线程栈信息(已经被破坏了)。当时碰到这个问题的开发人员一筹莫展,找笔者协助定位,笔者也很费了一番功夫,前后折腾两
- Ubuntu rk3399开启自启动脚本以及带图形界面脚本(imshow())
咕噜咕噜_water
ubuntubashlinuxopencv
一、一般自启动脚本及后台运行经网上查询,发现大部分都是通过rc.local来添加自启脚本的,下面以rk3399自动上网拨号为例来记录一下实现过程1、建立rc-local.service文件systemd默认读取/etc/systemd/system下的配置文件,该目录下的文件会链接/lib/systemd/system/下的文件,执行ls/lib/systemd/system你可以看到有很多启动脚
- RK3399pro + K7/A7 FPGA+ AI国产人工智能图像处理平台
深圳信迈科技DSP+ARM+FPGA
瑞芯微+FPGAARM+DSP+FPGA人工智能RK3399PROK7
rk3399pro简介rk3399pro是瑞星微新出来的带NPU的ARM芯片,在发布之前,NPU的算力2.4TOPS,而发现之后实测达到了3.0TOPS,如此强大的计算能力,jetsonnano的计算能力是0.47TFlops,两个单位有区别,只能用实际的网络计算来比较二者的算力。rk3399pro算力测试测试条件硬件:TB-RK3399Pro3GB内存+16GB闪存toolkit版本:toolk
- Livox激光雷达 mid360 跑 fastlio2 - 流程记录
Nice_cool.
三维点云SLAM学习
mid360跑fastlio2一、配置mid360环境1.1、主机配置静态IP为192.168.1.501.2、Livox-SDK21.3、Livox_ros_driver2二、Fast-lio22.1、下载源码2.2、修改代码2.3、编译、运行提示一下,如果在一些板上(比如rk3399,或者是树莓派,nano之类的)一直编译不了ros程序,很多时候是因为swap不足,这个时候扩展一下swap就好
- 芯片介绍-RK3399微处理器
漂泊在海上的星星
linux-驱动开发
芯片介绍-RK3399微处理器一、产品简介一、六核64位高性能一体板二、板载AI神经网络加速芯片三、丰富的扩展接口四、强大的硬件编解码能力五、强大的显示接口六、支持多操作系统:二、规格参数一、产品简介一、六核64位高性能一体板AIO-3399JD4一体板采用RK3399六核64位(A72×2+A53×4)处理器,主频高达1.8GHz,集成四核Mali-T860GPU。拥有超强的通用计算性能,集成更
- 深入探秘RK3399系统:架构、特性与多元应用
计算机学长
Android瑞星微芯片androidrk3399
RK3399系统基础介绍RK3399是瑞芯微推出的一款低功耗、高性能的应用处理器芯片,在嵌入式领域中有着广泛的应用,其基于先进的Big.Little架构,将双核Cortex-A72与四核Cortex-A53巧妙组合。Cortex-A72作为高性能核心,具备强大的运算能力,在处理复杂任务如大型数据运算、多任务并行处理时,能够快速响应,确保系统高效运行;Cortex-A53则以出色的能效比著称,在执行
- RK3399驱动开发 | RTC实时时钟芯片HYM8563S调试与嵌入式开发
程序员杨弋
嵌入式开发指南嵌入式
在嵌入式系统中,实时时钟芯片(RTC)是非常重要的组件之一,它提供了精确的日期和时间信息,并且在系统断电后能够保持时间的准确性,本文将介绍如何在RK3399平台上进行RTC实时时钟芯片HYM8563S的驱动开发和调试。一、硬件连接首先需要将RTC芯片HYM8563S正确连接到RK3399开发板上,HYM8563S有六个引脚,包括VCC、GND、SDA、SCL、ALM/IRQ和RST,将VCC引脚连
- python arm64_PyTorch-aarch64
人类0663号
pythonarm64
PyTorch源码编译步骤:1、源码编译环境:操作系统:debian9.12交换空间:1GPython版本:3.5硬件:CPU:RK3399(aarch64)内存:4G2、下载依赖包:下载pytorch及其依赖包时,默认从github上下载,如果网络不好、容易断开时,可在gitee上找到对应包克隆链接,然后修改对应配置文件,进行下载。需要细致耐心。3、编译主要参数:设置最大作业数:exportMA
- [RK3399][Android7.1] 调试笔记 --- 2.4G WiFi吞吐量测试速率很低
KrisFei
RK3399子类__WiFiuploaddonwloadlinkspeedfirmwarepatch
Platform:RK3399OS:Android7.1Kernel:v4.4.83说明:WiFi芯片使用的是AP6356S测试是在普通环境,并没有在屏蔽房中路由器WiFi最大速率1200Mbps2.4GWiFiLinkSpeed是130Mbps现象:测试2.4G的传输速率的时候,发现很低,如下图上传速率:下载速率:原因:SDK中对应的WiFidriver有问题,需要更新。版本可从Kernello
- 【PCIe 总线及设备入门学习专栏 10.1 -- Linux PCIe 驱动框架 之 RK3399 Region1 访问】
主公讲 ARM
#【PCIeBus专栏】pcie
文章目录CPU读写region0的地址MEM/IO读写示例配置Region1用于内存读写配置Region1地址转换Region1地址访问descregistersCPU读写region0的地址本篇文章紧接【PCIe总线及设备入门学习专栏10–LinuxPCIe驱动框架】由【PCIe总线及设备入门学习专栏10–LinuxPCIe驱动框架】我们知道RK3399的PCIecontrollerRegion
- 关于交换芯片调试 tx_delay rx_delay 的一点经验
Nyiragongo
开发笔记linux带宽测试
按照官方的介绍,需要用示波器测量数据和时钟实质相位差在2ns左右,但是由于时钟125M,数据方波需要的示波器带宽更高,所以普通示波器是没有办法的,测试变形很大,所以调试的方法如下:1.根据官方手册,先在设备树里设置跟手册示例一样的,保证ping的时候可以ping通,如果ping不通可以左右多调调,保证能ping通,至于超时什么的后面再细调,比如rk3568,我就抄的官方rk3399的延迟,然后往小
- RKMPP 在FFmpeg上实现硬编解码
大王算法
多媒体开发实战指南开发语言
一、编译指令--enable-cross-compile--cross-prefix=/home/cks/linux_sdk/buildroot/output/rockchip_rk3399pro/host/bin/aarch64-buildroot-linux-gnu---sysroot=/home/cks/linux_sdk/buildroot/output/rockchip_rk3399pr
- RK3399中的ffmpeg与rkmpp
小雪狼
linux/unix( ̄﹁ ̄)ffmpegRK3399rkmppRKMPPrga
RK3399中的ffmpeg对于rkmpp硬件解码的转换{AVCodecContext*codecCtx;size_tunused;RKMPPDecodeContext*rk_context=codecCtx->priv_data;RKMPPDecoder*decoder=(RKMPPDecoder*)rk_context->decoder_ref->data;ret=mpp_buffer_gro
- [RK3399 Linux] 使用ubuntu 20.04.5制作rootfs
嵌入式逍遥
嵌入式Linux开发RK3399Linux开发linuxubuntu开源服务器rootfs运维rk3399
一、ubuntubaseubuntubase是用于为特定需求创建自定义映像的最小rootfs,是ubuntu可以运行的最小环境。1.1下载源码下载ubuntu-base的方式有很多,可以从官方的地址:ttp://cdimage.ubuntu.com/ubuntu-base/releases。也可以其它镜像地址下载,如清华源:https://mirrors.tuna.tsinghua.edu.cn/
- (七)- plane/crtc/encoder/connector objects
-佩奇的爸爸
#DRM子系统drmobjects
1,framebuffer/planeRockchipRK3399-DRMframebuffer、plane基础知识-大奥特曼打小怪兽-博客园2,crtcRockchipRK3399-DRMcrtc基础知识-大奥特曼打小怪兽-博客园3,encoder/connector/bridgeRockchipRK3399-DRMencoder、bridge、connector基础知识-大奥特曼打小怪兽-博客
- RK3399 PCIe 中断处理与映射分析(INTx中断机制源码分析)
憧憬一下
嵌入式驱动开发#PCI/PCIe子系统嵌入式linux驱动开发arm开发嵌入式硬件PCI/PCIe
往期内容本文章相关专栏往期内容,PCI/PCIe子系统专栏:嵌入式系统的内存访问和总线通信机制解析、PCI/PCIe引入深入解析非桥PCI设备的访问和配置方法PCI桥设备的访问方法、软件角度讲解PCIe设备的硬件结构深入解析PCIe设备事务层与配置过程PCIe的三种路由方式PCI驱动与AXI总线框架解析(RK3399)深入解析PCIe地址空间与寄存器机制:从地址映射到TLP生成的完整流程PCIe_
- rk3399打开串口和使用gpio功能
荣敢飞
RK3399项目调试嵌入式硬件androidlinux
一、GPIO使用我们直接参考\kernel\drivers\misc\5v_en.c就会有[*]RGFGPIOgpiodriver(NEW)编译出.o文件先Dlt上面有两个led红和绿LED_CTLGPIO4_D1一个脚控制LED_CTL控制之后,就绿灯,否则红灯!二、TTL串口功能打开从rk3399.dtsi中aliases{i2c0=&i2c0;i2c1=&i2c1;i2c2=&i2c2;i2
- RockPI 4A单板Linux 4.4内核下的RK3399 GPIO功能解析
m0_67544708
linux运维服务器
RockPI4A单板Linux4.4内核下的RK3399GPIO功能解析摘要:本文将基于RockPI4A单板,介绍Linux4.4内核下RK3399GPIO(通用输入输出)功能的使用方法。通过详细的代码解析和示例,帮助读者理解如何在Linux内核中使用GPIO,以及如何通过GPIO实现单板的基本控制和功能扩展。引言GPIO(通用输入输出)是嵌入式系统中的一个重要接口,用于实现对单板外设的控制和状态
- RK3399Pro/AR9201对比
002237
平台硬件基础知识芯片
RK3399Pro/AR9201对比本文采用知识共享署名4.0国际许可协议进行许可,转载时请注明原文链接,图片在使用时请保留全部内容,可适当缩放并在引用处附上图片所在的文章链接。baseAI芯片XPUAR9201ApplicationProcessorCoreMCUcoreCEVADSPcoreVideoCodecFormatVideoCodecPerformanceISPAudioEncodin
- 关于学生课堂行为识别算法
NineDays66
算法行为识别深度学习学生行为分析考试分析
目前基于针对学校做了一款考生行为识别算法,算法可以在服务器部署,也可以在前端设备如Jetson、RK等边缘设备运行,目前算法已经投入使用,算法效果如下目前算法在2080Ti服务器运行效率是150帧每秒算法运行平台模型大小吞吐量张/秒PC-2080TI50M150ARM-RK3399PRO10M10行为类别划分如下:学生未到、存在空位学生双手放在桌子下学生左、右看学生传纸条学生举手学生爬桌子睡觉学生
- 【RK3399 Android10 二合一 支持GM8775C mipi转lvds 10.1寸屏幕适配】
LJ-SEU
linuxandroid
【RK3399Android10二合一支持GM8775Cmipi转lvds10.1寸屏幕适配】文章目录【RK3399Android10二合一支持GM8775Cmipi转lvds10.1寸屏幕适配】原理图分析数据信号链路分析调试记录GM8775C后端链路测试输出前端mipi信号测试改板后调试成功后续问题修复舜宇的rk3399的Android10二合一新板卡,需求是使用mipi输出信号,通过GM877
- 【RK3399 Android10, 支持温控风扇】
LJ-SEU
elasticsearch大数据搜索引擎
文章目录【RK3399Android10,支持温控风扇】需求描述patch【RK3399Android10,支持温控风扇】需求描述3399Android10的风扇,希望能做成温度控制的风扇,通过设置不同测温度阈值来实行不同的风速patchkernel0020-feat-rochchip-system-monitor-add-temperature-notifye.patchFrom92116bdb
- LangChain pdf的读取以及向量数据库的使用
hehui0921
LangChain数据库langchainpdf
以下使用了3399.pdf,RockchipRK3399TRMPart1importChatGLMfromlangchain.chainsimportLLMChainfromlangchain_core.output_parsersimportStrOutputParserfromlangchain_core.promptsimportChatPromptTemplatefromlangchain
- LeetCode[Math] - #66 Plus One
Cwind
javaLeetCode题解AlgorithmMath
原题链接:#66 Plus One
要求:
给定一个用数字数组表示的非负整数,如num1 = {1, 2, 3, 9}, num2 = {9, 9}等,给这个数加上1。
注意:
1. 数字的较高位存在数组的头上,即num1表示数字1239
2. 每一位(数组中的每个元素)的取值范围为0~9
难度:简单
分析:
题目比较简单,只须从数组
- JQuery中$.ajax()方法参数详解
AILIKES
JavaScriptjsonpjqueryAjaxjson
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址。
type: 要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持。
timeout: 要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局
- JConsole & JVisualVM远程监视Webphere服务器JVM
Kai_Ge
JVisualVMJConsoleWebphere
JConsole是JDK里自带的一个工具,可以监测Java程序运行时所有对象的申请、释放等动作,将内存管理的所有信息进行统计、分析、可视化。我们可以根据这些信息判断程序是否有内存泄漏问题。
使用JConsole工具来分析WAS的JVM问题,需要进行相关的配置。
首先我们看WAS服务器端的配置.
1、登录was控制台https://10.4.119.18
- 自定义annotation
120153216
annotation
Java annotation 自定义注释@interface的用法 一、什么是注释
说起注释,得先提一提什么是元数据(metadata)。所谓元数据就是数据的数据。也就是说,元数据是描述数据的。就象数据表中的字段一样,每个字段描述了这个字段下的数据的含义。而J2SE5.0中提供的注释就是java源代码的元数据,也就是说注释是描述java源
- CentOS 5/6.X 使用 EPEL YUM源
2002wmj
centos
CentOS 6.X 安装使用EPEL YUM源1. 查看操作系统版本[root@node1 ~]# uname -a Linux node1.test.com 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux [root@node1 ~]#
- 在SQLSERVER中查找缺失和无用的索引SQL
357029540
SQL Server
--缺失的索引
SELECT avg_total_user_cost * avg_user_impact * ( user_scans + user_seeks ) AS PossibleImprovement ,
last_user_seek ,
 
- Spring3 MVC 笔记(二) —json+rest优化
7454103
Spring3 MVC
接上次的 spring mvc 注解的一些详细信息!
其实也是一些个人的学习笔记 呵呵!
- 替换“\”的时候报错Unexpected internal error near index 1 \ ^
adminjun
java“\替换”
发现还是有些东西没有刻子脑子里,,过段时间就没什么概念了,所以贴出来...以免再忘...
在拆分字符串时遇到通过 \ 来拆分,可是用所以想通过转义 \\ 来拆分的时候会报异常
public class Main {
/*
- POJ 1035 Spell checker(哈希表)
aijuans
暴力求解--哈希表
/*
题意:输入字典,然后输入单词,判断字典中是否出现过该单词,或者是否进行删除、添加、替换操作,如果是,则输出对应的字典中的单词
要求按照输入时候的排名输出
题解:建立两个哈希表。一个存储字典和输入字典中单词的排名,一个进行最后输出的判重
*/
#include <iostream>
//#define
using namespace std;
const int HASH =
- 通过原型实现javascript Array的去重、最大值和最小值
ayaoxinchao
JavaScriptarrayprototype
用原型函数(prototype)可以定义一些很方便的自定义函数,实现各种自定义功能。本次主要是实现了Array的去重、获取最大值和最小值。
实现代码如下:
<script type="text/javascript">
Array.prototype.unique = function() {
var a = {};
var le
- UIWebView实现https双向认证请求
bewithme
UIWebViewhttpsObjective-C
什么是HTTPS双向认证我已在先前的博文 ASIHTTPRequest实现https双向认证请求
中有讲述,不理解的读者可以先复习一下。本文是用UIWebView来实现对需要客户端证书验证的服务请求,网上有些文章中有涉及到此内容,但都只言片语,没有讲完全,更没有完整的代码,让人困扰不已。但是此知
- NoSQL数据库之Redis数据库管理(Redis高级应用之事务处理、持久化操作、pub_sub、虚拟内存)
bijian1013
redis数据库NoSQL
3.事务处理
Redis对事务的支持目前不比较简单。Redis只能保证一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令。当一个client在一个连接中发出multi命令时,这个连接会进入一个事务上下文,该连接后续的命令不会立即执行,而是先放到一个队列中,当执行exec命令时,redis会顺序的执行队列中
- 各数据库分页sql备忘
bingyingao
oraclesql分页
ORACLE
下面这个效率很低
SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM IPAY_RCD_FS_RETURN order by id desc) A ) WHERE RN <20;
下面这个效率很高
SELECT A.*, ROWNUM RN FROM (SELECT * FROM IPAY_RCD_
- 【Scala七】Scala核心一:函数
bit1129
scala
1. 如果函数体只有一行代码,则可以不用写{},比如
def print(x: Int) = println(x)
一行上的多条语句用分号隔开,则只有第一句属于方法体,例如
def printWithValue(x: Int) : String= println(x); "ABC"
上面的代码报错,因为,printWithValue的方法
- 了解GHC的factorial编译过程
bookjovi
haskell
GHC相对其他主流语言的编译器或解释器还是比较复杂的,一部分原因是haskell本身的设计就不易于实现compiler,如lazy特性,static typed,类型推导等。
关于GHC的内部实现有篇文章说的挺好,这里,文中在RTS一节中详细说了haskell的concurrent实现,里面提到了green thread,如果熟悉Go语言的话就会发现,ghc的concurrent实现和Go有点类
- Java-Collections Framework学习与总结-LinkedHashMap
BrokenDreams
LinkedHashMap
前面总结了java.util.HashMap,了解了其内部由散列表实现,每个桶内是一个单向链表。那有没有双向链表的实现呢?双向链表的实现会具备什么特性呢?来看一下HashMap的一个子类——java.util.LinkedHashMap。
- 读《研磨设计模式》-代码笔记-抽象工厂模式-Abstract Factory
bylijinnan
abstract
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* Abstract Factory Pattern
* 抽象工厂模式的目的是:
* 通过在抽象工厂里面定义一组产品接口,方便地切换“产品簇”
* 这些接口是相关或者相依赖的
- 压暗面部高光
cherishLC
PS
方法一、压暗高光&重新着色
当皮肤很油又使用闪光灯时,很容易在面部形成高光区域。
下面讲一下我今天处理高光区域的心得:
皮肤可以分为纹理和色彩两个属性。其中纹理主要由亮度通道(Lab模式的L通道)决定,色彩则由a、b通道确定。
处理思路为在保持高光区域纹理的情况下,对高光区域着色。具体步骤为:降低高光区域的整体的亮度,再进行着色。
如果想简化步骤,可以只进行着色(参看下面的步骤1
- Java VisualVM监控远程JVM
crabdave
visualvm
Java VisualVM监控远程JVM
JDK1.6开始自带的VisualVM就是不错的监控工具.
这个工具就在JAVA_HOME\bin\目录下的jvisualvm.exe, 双击这个文件就能看到界面
通过JMX连接远程机器, 需要经过下面的配置:
1. 修改远程机器JDK配置文件 (我这里远程机器是linux).
 
- Saiku去掉登录模块
daizj
saiku登录olapBI
1、修改applicationContext-saiku-webapp.xml
<security:intercept-url pattern="/rest/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
<security:intercept-url pattern=&qu
- 浅析 Flex中的Focus
dsjt
htmlFlexFlash
关键字:focus、 setFocus、 IFocusManager、KeyboardEvent
焦点、设置焦点、获得焦点、键盘事件
一、无焦点的困扰——组件监听不到键盘事件
原因:只有获得焦点的组件(确切说是InteractiveObject)才能监听到键盘事件的目标阶段;键盘事件(flash.events.KeyboardEvent)参与冒泡阶段,所以焦点组件的父项(以及它爸
- Yii全局函数使用
dcj3sjt126com
yii
由于YII致力于完美的整合第三方库,它并没有定义任何全局函数。yii中的每一个应用都需要全类别和对象范围。例如,Yii::app()->user;Yii::app()->params['name'];等等。我们可以自行设定全局函数,使得代码看起来更加简洁易用。(原文地址)
我们可以保存在globals.php在protected目录下。然后,在入口脚本index.php的,我们包括在
- 设计模式之单例模式二(解决无序写入的问题)
come_for_dream
单例模式volatile乱序执行双重检验锁
在上篇文章中我们使用了双重检验锁的方式避免懒汉式单例模式下由于多线程造成的实例被多次创建的问题,但是因为由于JVM为了使得处理器内部的运算单元能充分利用,处理器可能会对输入代码进行乱序执行(Out Of Order Execute)优化,处理器会在计算之后将乱序执行的结果进行重组,保证该
- 程序员从初级到高级的蜕变
gcq511120594
框架工作PHPandroidhtml5
软件开发是一个奇怪的行业,市场远远供不应求。这是一个已经存在多年的问题,而且随着时间的流逝,愈演愈烈。
我们严重缺乏能够满足需求的人才。这个行业相当年轻。大多数软件项目是失败的。几乎所有的项目都会超出预算。我们解决问题的最佳指导方针可以归结为——“用一些通用方法去解决问题,当然这些方法常常不管用,于是,唯一能做的就是不断地尝试,逐个看看是否奏效”。
现在我们把淫浸代码时间超过3年的开发人员称为
- Reverse Linked List
hcx2013
list
Reverse a singly linked list.
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
p
- Spring4.1新特性——数据库集成测试
jinnianshilongnian
spring 4.1
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
- C# Ajax上传图片同时生成微缩图(附Demo)
liyonghui160com
1.Ajax无刷新上传图片,详情请阅我的这篇文章。(jquery + c# ashx)
2.C#位图处理 System.Drawing。
3.最新demo支持IE7,IE8,Fir
- Java list三种遍历方法性能比较
pda158
java
从c/c++语言转向java开发,学习java语言list遍历的三种方法,顺便测试各种遍历方法的性能,测试方法为在ArrayList中插入1千万条记录,然后遍历ArrayList,发现了一个奇怪的现象,测试代码例如以下:
package com.hisense.tiger.list;
import java.util.ArrayList;
import java.util.Iterator;
- 300个涵盖IT各方面的免费资源(上)——商业与市场篇
shoothao
seo商业与市场IT资源免费资源
A.网站模板+logo+服务器主机+发票生成
HTML5 UP:响应式的HTML5和CSS3网站模板。
Bootswatch:免费的Bootstrap主题。
Templated:收集了845个免费的CSS和HTML5网站模板。
Wordpress.org|Wordpress.com:可免费创建你的新网站。
Strikingly:关注领域中免费无限的移动优
- localStorage、sessionStorage
uule
localStorage
W3School 例子
HTML5 提供了两种在客户端存储数据的新方法:
localStorage - 没有时间限制的数据存储
sessionStorage - 针对一个 session 的数据存储
之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不