- 详解FreeRTOS:FreeRTOS列表和列表项 (基础篇—13)
不脱发的程序猿
详解FreeRTOSFreeRTOS列表和列表项FreeRTOSRTOS
目录1、列表和列表项是什么?1.1、列表1.2、列表项2、初始化列表和列表项2.1、初始化列表2.2、初始化列表项3、列表项插入3.1、列表项插入过程原理3.2、列表项插入源码4、列表项末尾插入4.1、列表项末尾插入过程原理4.2、列表项末尾插入源码5、删除列表项6、遍历列表7、实验:列表项的插入和删除本篇博文是《详解FreeRTOS》专栏基础篇最后一篇,下篇博文将进入进阶篇阶段。列表和列表项是直
- 6,FreeRTOS临界区代码保护与任务调度器的挂起与恢复
自激振荡器
FreeRTOS学习笔记单片机stm32嵌入式硬件freeRTOSFreeRTOS
一、临界区代码保护如果我们想在执行某段代码时不被中断打断,此时需要进行临界区代码保护。在临界区内关闭中断,临界区结束后开启中断。需要注意的是临界区的进入和退出需要成对出现,如果进入两次,那么需要退出两次才可以成功开启中断。注:本实验基于正点原子FreeRTOS教程的学习总结。1..所需API函数介绍taskENTER_CRITICAL函数用来进入临界区。在任务中调用。#definetaskENTE
- 7,FreeRTOS列表与列表项的插入删除
自激振荡器
FreeRTOS学习笔记单片机stm32嵌入式硬件freeRTOSFreeRTOS
一、实验目标创建三个动态任务,栈空间大小均为128字。startTask、Task1、Task2。startTask仅运行一次,负责task1、task2任务的创建,startTask任务的删除。Task1负责初始化列表、列表项123,并进行列表项的插入实验与删除实验。Task2负责5S闪烁一次LED0,用于指示系统的运行状态。注:本实验基于正点原子FreeRTOS教程的学习总结。二、实验准备1.
- Linux——搭建嵌入式Linux开发环境步骤总结(虚拟机、Ubuntu、JDK、库文件、GCC)
Winter_world
搭建嵌入式Linux开发环境虚拟机Ubuntu安装JDK安装库文件GCC版本更新
目录0前言1主机软件环境2Linux系统下安装编译组件3Linux系统下安装库文件和JDK0前言回顾一直以来做的嵌入式项目方向,从如ST的单片机裸机开发,SOC开发,到STM32裸机开发,基于uCOSII的开发,基于freeRTOS的开发等,在实时操作系统层面的应用开发停留了一段时间了,一直想再突破下自我,去年做了一个基于工控机方案的Linux系统应用开发项目,对于Linux一直没有系统性的学习整
- 结合 STM32CubeMX 使用 FreeRTOS 实时操作系统
麻辣长颈鹿Sir
FreeRTOS嵌入式开发C/C++stm32单片机FreeRTOSSTM32CubeMX实时操作系统C/C++
前言在STM32CubeMX软件出现以后,创建嵌入式项目变得简洁了许多,开发者无需重复编写MCU的外设初始化配置,只需在STM32CubeMX软件中动动鼠标配置完毕,就可以自动生成基于HAL/LL库的Keil项目文件,提高了开发效率。最近想要学习一下FreeRTOS操作系统,发现在STM32CubeMX中可以直接在项目中生成FreeRTOS系统源码,非常方便,而目前网上有关使用STM32CubeM
- 鸿蒙OH南向开发 小型系统内核(LiteOS-A)【概述】
yx525623
鸿蒙开发openharmony鸿蒙南向鸿蒙开发openharmonyharmonyos鸿蒙南向嵌入式硬件
简介OpenHarmony轻量级内核是基于IoT领域轻量级物联网操作系统HuaweiLiteOS内核演进发展的新一代内核,包含LiteOS-M和LiteOS-A两类内核。LiteOS-M内核主要应用于轻量系统,面向的MCU(MicroprocessorUnit)一般是百K级内存,可支持MPU(MemoryProtectionUnit)隔离,业界类似的内核有FreeRTOS或ThreadX等;Lit
- FreeRTOS中的任务调度
boringhex.top
MCUFreeRTOSc嵌入式
引言FreeRTOS是一个流行的小型开源实时操作系统,广泛应用于嵌入式系统领域。本文旨在详细介绍FreeRTOS的任务调度机制,我们将探讨其调度算法的原理,分析调度器的源码,并通过图表帮助理解调度过程。FreeRTOS基础实时操作系统简介实时操作系统(RTOS)是为了能在规定的时间内完成特定任务的操作系统。与通用操作系统不同,实时性是其最重要的特征。FreeRTOS的特点轻量级:占用资源少,适合资
- 深度解析:FreeRTOS在ESP32S3双核架构下的抢占式调度机制与性能优化策略
SlientICE
架构性能优化嵌入式硬件单片机
FreeRTOS在ESP32S3上的作用之进程调度文章总结(帮你们节约时间)FreeRTOS的抢占式调度机制让ESP32S3能够实现真正的多任务并发,通过优先级和时间片轮转确保系统响应性和公平性。ESP32S3双核架构下的SMP调度实现了任务在两个CPU核心间的智能分配,通过负载均衡和核间同步机制最大化系统性能。任务调度器通过精密的数学模型和算法,能够在微秒级别内完成上下文切换,为嵌入式系统提供了
- 【FreeRTOS】第二课:创建第一个多任务系统
仰泳之鹅
FreeRTOSstm32
目录一、前言二、以创建动态任务为例1.参数介绍2.举例一、前言嵌入式领域有多种RTOS例如FreeRTOS、RT-Thread等操作系统两个操作系统任务创建函数如下FreeRTOS:xTaskCreate()RT-Thread:rt_thread_creat()CMSIS_OS为此创建了统一的接口osThreadNew(),只要输入对应的函数变量便可以区分使用不同的操作系统二、以创建动态任务为例1
- Keil中 L6406E: No space in execution regions with .ANY selector matching heap_4.o(.bss) 错误分析简述
lixzest
stm32C
链接器错误L6406E:Nospaceinexecutionregionswith.ANYselectormatchingheap_4.o(.bss)表明内存分配已超出预期范围,通常与全局/静态变量(.bss段)或堆(Heap)配置有关。以下是逐步解决方案:1.理解错误原因.bss段:存储未初始化的全局变量和静态变量。heap_4.o:通常与FreeRTOS的堆管理(Heap4)相关,Heap4需
- FreeRTOS创建任务时的堆栈大小问题
嵌入式码农驿站
单片机程序freertosstm32单片机
FreeRTOS创建任务函数BaseType_txTaskCreate(TaskFunction_tpxTaskCode,constchar*constpcName,constconfigSTACK_DEPTH_TYPEusStackDepth,void*constpvParameters,UBaseType_tuxPriority,TaskHandle_t*constpxCreatedTask)
- 【rtos】-队列
追心嵌入式
开发语言mcu
在FreeRTOS中,消息队列(Queue)和信号量(Semaphore)是实现任务间通信与同步的核心机制。对于多个发送者与接收者的对应关系、应用场景及封装方法,以下是详细解答:一、多发送者与接收者的对应机制基于队列的广播模式多个发送者可向同一个队列发送数据,而接收者通过队列接收所有消息,无需关心具体发送者。这实现了一对多或多对多通信。c运行//创建一个队列供多个任务使用QueueHandle_t
- STM32和树莓派的分工
⚙️修正版:典型硬件组合与通信流程(以移动机器人为例)1.硬件分工:大脑vs四肢角色硬件运行软件核心任务是否直接运行ROS决策大脑树莓派4B/JetsonNanoUbuntu+ROS运行SLAM、导航、视觉识别等复杂算法✅是实时四肢STM32F4FreeRTOS/裸机读取电机编码器、控制电机PWM❌否传感器/执行器电机、激光雷达、IMU-执行动作/采集数据-2.为什么需要STM32?树莓派无法直接
- esp32+IDF V5.1.1版本编译freertos报错
嵌入式软硬件叶玄
ESP32入门教程esp32
error:'portTICK_RATE_MS'undeclared(firstuseinthisfunction);didyoumean'portTICK_PERIOD_MS解决方法:使用命令idf.pymenuconfig打开配置界面配置freeRtos使能configENABLE_BACKWARD_COMPATIBLITY
- FreeRTOS启动流程以及任务调度
想当钓鱼佬
单片机嵌入式硬件
FreeRTOS启动流程概述FreeRTOS的启动流程通常分为硬件初始化和操作系统初始化两个阶段。以下是典型启动流程:硬件初始化阶段由用户完成,包括时钟配置、外设初始化、堆栈设置等。通常需要在main()函数中调用硬件相关的初始化函数。操作系统初始化阶段由FreeRTOS完成。调用vTaskStartScheduler()启动调度器,此函数会初始化内核组件(如任务列表、空闲任务、定时器任务等),并
- FreeRTOS任务通知使用以及例程
想当钓鱼佬
FreeRTOSstm32
一.FreeRTOS任务通知简介任务通知是FreeRTOS提供的一种轻量级通信机制,允许任务间直接发送事件或数据,无需创建队列、信号量等中间对象。每个任务拥有独立的通知值(32位)和状态标志,效率高且节省内存。任务通知通常用于替代二值信号量或事件标志组,提供了更轻量级的任务间通信方式。大多数任务间通信方法通过中间对象,如队列、信号量或事件组。发送任务写入通信对象,接收任务从通信对象读取。使用任务通
- FreeRTOS任务切换,现场保护(M3,M4内核)
想当钓鱼佬
FreeRTOSstm32
一.寄存器和栈FreeRTOS在任务切换或中断发生时需要保存当前任务的上下文(寄存器状态、程序计数器等),确保任务恢复时能继续执行。上下文保存分为被动保存和主动保存两种场景。保存现场下图为三种切换现场的情况(现场就是寄存器存储值):(1).经典的main函数中调用fun1函数,现场的保存:绿色部分为切换到fun1函数时保存的main函数的现场,SP和FP被保存说明fun1中用到了栈,LR和PC被保
- FreeRTOS源码分析:heap
想当钓鱼佬
FreeRTOSstm32
FreeRTOS堆内存管理机制分析FreeRTOS提供5种堆内存管理方案(heap_1.c至heap_5.c),每种方案针对不同应用场景设计,源码位于FreeRTOS/Source/portable/MemMang目录。标准C库malloc()和free()函数分配堆空间有以下缺点:它们在嵌入式系统上并不总是可用。它们占用了宝贵的代码空间。它们不是线程安全的。它们不是确定性的(执行函数所需时间将因
- STM32Cube高效开发教程<高级篇><FreeRTOS>(九)-----信号量及二值量例程
致虚守静~归根复命
1024程序员节STM32嵌入式FreeRTOS信号量
声明:本人水平有限,博客可能存在部分错误的地方,请广大读者谅解并向本人反馈错误。 本专栏博客参考《STM32Cube高效开发教程(高级篇)》,有意向的读者可以购买正版书籍辅助学习,本书籍由王维波老师、鄢志丹老师、王钊老师倾力打造,书籍内容干货满满。 本专栏在前面介绍了队列,队列的功能是将进程间需要传递的数据存在其中,所以在有的RTOS系统里,队列也被称为“邮箱”。有的时候,进程间需要传递的
- FreeRTOS中断管理
憧憬一下
freeRtosFreeRTOS嵌入式中断
目录1.中断2.为什么使用两套API2.1为什么2.2优势2.3第三方库3.两套API列表4.pxHigherPriorityTaskWoken参数和portYIELD_FROM_ISR宏5.中断处理拆分6.屏蔽中断6.1核心原理6.2在任务中屏蔽中断6.3在中断服务程序(ISR)中屏蔽中断6.4高优先级中断不允许调用FreeRTOS的API7.暂停调度器(SchedulerSuspension)
- FreeRTOS定时器的介绍和使用
风吟物语
单片机嵌入式硬件
目录1,常见定时器高级控制定时器(TIM1)通用定时器(TIM2、TIM3、TIM4、TIM5、TIM15、TIM16、TIM17)基本定时器(TIM6、TIM7)低功耗定时器(LPTIM1)2,以TIM6定时器为例,介绍定时器的使用1,定时器实例选择2,配置所需定时器3,设置频率4,中断回调函数3,TIM6定时器代码(初始化后自动生成)4,使用示例定时器本质上是对时钟信号进行计数。系统时钟会产生
- NXP iMX8MM Cortex-M4 核心 GPT Capture 测试
toradexsh
ARMNXPFreeRTOSGPTiMX8MM
ByToradex秦海1).简介NXPi.MX8系列处理器均为异构多核架构SoC,除了可以运行Linux等复杂操作系统的Cortax-A核心,还包含了可以运行实时操作系统比如FreeRTOS的Cortex-M核心,本文就演示通过NXPi.MX8MM处理器集成的Cortex-M4核心来运行GPT(GeneralPurposeTimer)输入采集功能模块的测试。I.MX8MMini处理器GPT模块硬件
- 【Zephyr基础开发系列】01_Ubuntu搭建Zephyr环境
jz-炸芯片的zero
Zephyr基础linux物联网iot驱动开发mcu
一、Zephyr实时系统的优势前言:Zephyr是专为资源受限设备设计的开源实时系统,常用在物联网终端、小型SOC芯片等设备上。与常见的小型嵌入式RTOS相比,Zephyr继承了Linux驱动开发的优点,即采用了驱动(driver)-应用(app)分离的开发方式。----什么叫驱动与应用分离?在常见没有MMU的32位MCU,搭配其他实时系统(UCOS、FreeRTOS)开发来看,完整的一套开发流程
- ESP32入门(三)使用 FreeRTOS 多任务系统实现 LED 点灯控制
乄夜
ESP32入门单片机物联网51单片机嵌入式硬件
在之前的博客中,我们已经学习了ESP32的基础点灯操作以及通过WiFi和浏览器实现远程控制。今天我们将进一步探索ESP32的强大性能,引入FreeRTOS实时操作系统,通过多任务机制实现更复杂的LED控制场景。FreeRTOS作为嵌入式领域应用广泛的实时操作系统,能够帮助我们更高效地管理ESP32的资源,实现多个任务的并行执行。一、FreeRTOS基础概念与ESP32集成优势1.1FreeRTOS
- ESP32 入门 (九) 使用FreeRtos创建任务并使用信号量和互斥量通信
乄夜
ESP32入门单片机stm32物联网iot嵌入式硬件mcu
在ESP32开发中,随着项目复杂度的提升,多任务协同工作变得愈发普遍。为了确保任务之间的同步与共享资源的安全访问,FreeRTOS提供了信号量(Semaphore)和互斥量(Mutex)等强大工具。本文将深入讲解如何在ESP32上使用FreeRTOS创建任务,并借助信号量和互斥量实现高效、安全的任务间通信,助力你进一步掌握ESP32的高级开发技巧。一、信号量与互斥量基础概念(一)信号量信号量是一种
- FreeRTOS队列
憧憬一下
freeRtos嵌入式FreeRTOS
目录1.特性2.传输数据的两种方法3.队列的阻塞访问4.函数4.1创建4.2复位4.3删除4.4写操作4.4.1写入到尾部4.4.2写入到头部4.5读操作4.6覆盖操作(Overwrite)4.7窥视操作(Peek)4.8队列状态查询5.常规使用6.队列集6.1概念6.2相关函数6.3示例7.队列的好处7.1实现互斥访问7.2休眠唤醒_提高CPU利用率8.队列的内部源码分析8.1结构体8.2创建函
- FreeRTOS同步和互斥
憧憬一下
freeRtos嵌入式FreeRTOS
目录1.概念**1.1同步(Synchronization)**缺陷**1.2互斥(MutualExclusion)**缺陷**1.3同步与互斥的关系**2.各类方法对比疑问疑问11.概念1.1同步(Synchronization)同步是指多个任务之间存在依赖关系,一个任务需要等待另一个任务完成某个操作后,才能继续执行。现实生活例子:在团队合作中,同事A先写完报表,经理B才能向领导汇报。经理B必须
- ESP32开发之freeRTOS的事件组
湮雨塵飛
esp32freertoseventsgroup事件组
什么是事件组事件组的应用场景事件组的API函数事件组应用举例总结什么是事件组概念:事件组就是一个整数,高8位给内核使用,其他位用来表示事件。在ESP32的IDFfreeRTOS中,这个整数是32位的,低24位用来供事件组使用。举一个生活中的例子:你在等快递,有三个包裹来自不同平台:Bit0:淘宝快递到了Bit1:京东快递到了Bit2:拼多多快递到了你告诉前台:“等这三个快递都到了再通知我。”(这就
- 四款主流物联网操作系统(FreeRTOS、LiteOS、RT-Thread、AliOS)的综合对比分析
scoone
嵌入式
以下是四款主流物联网操作系统(FreeRTOS、LiteOS、RT-Thread、AliOS)的综合对比分析,基于技术架构、资源占用、生态支持及应用场景等维度:核心特性对比特性FreeRTOSLiteOSRT-ThreadAliOSThings背景/主导方亚马逊AWS(开源)华为(开源)睿赛德科技(开源+商业)阿里巴巴(开源)内核架构微内核(仅基础调度)轻量级分层内核混合内核(微内核+组件化)基于
- 嵌入式学习笔记 - freeRTOS关于空闲任务的理解
Lester_1101
嵌入式stm32
由于freeRTOS的任务延时都是阻塞延时,阻塞延时是当任务进入延时后,该任务的CPU使用权被剥夺进入阻塞状态(阻塞状态可以理解为保持状态不变),可以理解为任务不运行时PC停止了。使用阻塞延时的好处就是可以让CPU充分的得到利用,不会空耗在软件延时上。但是所有任务都处在阻塞延时时,相当于PC停止了,很明显这是不合理的,而且会产生硬件错误,所以会有一个空闲任务,作为保底空闲任务的优先级是最低的。而且
- Nginx负载均衡
510888780
nginx应用服务器
Nginx负载均衡一些基础知识:
nginx 的 upstream目前支持 4 种方式的分配
1)、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
2)、weight
指定轮询几率,weight和访问比率成正比
- RedHat 6.4 安装 rabbitmq
bylijinnan
erlangrabbitmqredhat
在 linux 下安装软件就是折腾,首先是测试机不能上外网要找运维开通,开通后发现测试机的 yum 不能使用于是又要配置 yum 源,最后安装 rabbitmq 时也尝试了两种方法最后才安装成功
机器版本:
[root@redhat1 rabbitmq]# lsb_release
LSB Version: :base-4.0-amd64:base-4.0-noarch:core
- FilenameUtils工具类
eksliang
FilenameUtilscommon-io
转载请出自出处:http://eksliang.iteye.com/blog/2217081 一、概述
这是一个Java操作文件的常用库,是Apache对java的IO包的封装,这里面有两个非常核心的类FilenameUtils跟FileUtils,其中FilenameUtils是对文件名操作的封装;FileUtils是文件封装,开发中对文件的操作,几乎都可以在这个框架里面找到。 非常的好用。
- xml文件解析SAX
不懂事的小屁孩
xml
xml文件解析:xml文件解析有四种方式,
1.DOM生成和解析XML文档(SAX是基于事件流的解析)
2.SAX生成和解析XML文档(基于XML文档树结构的解析)
3.DOM4J生成和解析XML文档
4.JDOM生成和解析XML
本文章用第一种方法进行解析,使用android常用的DefaultHandler
import org.xml.sax.Attributes;
- 通过定时任务执行mysql的定期删除和新建分区,此处是按日分区
酷的飞上天空
mysql
使用python脚本作为命令脚本,linux的定时任务来每天定时执行
#!/usr/bin/python
# -*- coding: utf8 -*-
import pymysql
import datetime
import calendar
#要分区的表
table_name = 'my_table'
#连接数据库的信息
host,user,passwd,db =
- 如何搭建数据湖架构?听听专家的意见
蓝儿唯美
架构
Edo Interactive在几年前遇到一个大问题:公司使用交易数据来帮助零售商和餐馆进行个性化促销,但其数据仓库没有足够时间去处理所有的信用卡和借记卡交易数据
“我们要花费27小时来处理每日的数据量,”Edo主管基础设施和信息系统的高级副总裁Tim Garnto说道:“所以在2013年,我们放弃了现有的基于PostgreSQL的关系型数据库系统,使用了Hadoop集群作为公司的数
- spring学习——控制反转与依赖注入
a-john
spring
控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心。 控制反转一般分为两种类型,依赖注入(Dependency Injection,简称DI)和依赖查找(Dependency Lookup)。依赖注入应用比较广泛。
- 用spool+unixshell生成文本文件的方法
aijuans
xshell
例如我们把scott.dept表生成文本文件的语句写成dept.sql,内容如下:
set pages 50000;
set lines 200;
set trims on;
set heading off;
spool /oracle_backup/log/test/dept.lst;
select deptno||','||dname||','||loc
- 1、基础--名词解析(OOA/OOD/OOP)
asia007
学习基础知识
OOA:Object-Oriented Analysis(面向对象分析方法)
是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题。OOA与结构化分析有较大的区别。OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析。
OOA(面向对象的分析)模型由5个层次(主题层、对象类层、结构层、属性层和服务层)
- 浅谈java转成json编码格式技术
百合不是茶
json编码java转成json编码
json编码;是一个轻量级的数据存储和传输的语言
在java中需要引入json相关的包,引包方式在工程的lib下就可以了
JSON与JAVA数据的转换(JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非
常适合于服务器与 JavaScript 之间的数据的交
- web.xml之Spring配置(基于Spring+Struts+Ibatis)
bijian1013
javaweb.xmlSSIspring配置
指定Spring配置文件位置
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring-dao-bean.xml,/WEB-INF/spring-resources.xml,
/WEB-INF/
- Installing SonarQube(Fail to download libraries from server)
sunjing
InstallSonar
1. Download and unzip the SonarQube distribution
2. Starting the Web Server
The default port is "9000" and the context path is "/". These values can be changed in &l
- 【MongoDB学习笔记十一】Mongo副本集基本的增删查
bit1129
mongodb
一、创建复本集
假设mongod,mongo已经配置在系统路径变量上,启动三个命令行窗口,分别执行如下命令:
mongod --port 27017 --dbpath data1 --replSet rs0
mongod --port 27018 --dbpath data2 --replSet rs0
mongod --port 27019 -
- Anychart图表系列二之执行Flash和HTML5渲染
白糖_
Flash
今天介绍Anychart的Flash和HTML5渲染功能
HTML5
Anychart从6.0第一个版本起,已经逐渐开始支持各种图的HTML5渲染效果了,也就是说即使你没有安装Flash插件,只要浏览器支持HTML5,也能看到Anychart的图形(不过这些是需要做一些配置的)。
这里要提醒下大家,Anychart6.0版本对HTML5的支持还不算很成熟,目前还处于
- Laravel版本更新异常4.2.8-> 4.2.9 Declaration of ... CompilerEngine ... should be compa
bozch
laravel
昨天在为了把laravel升级到最新的版本,突然之间就出现了如下错误:
ErrorException thrown with message "Declaration of Illuminate\View\Engines\CompilerEngine::handleViewException() should be compatible with Illuminate\View\Eng
- 编程之美-NIM游戏分析-石头总数为奇数时如何保证先动手者必胜
bylijinnan
编程之美
import java.util.Arrays;
import java.util.Random;
public class Nim {
/**编程之美 NIM游戏分析
问题:
有N块石头和两个玩家A和B,玩家A先将石头随机分成若干堆,然后按照BABA...的顺序不断轮流取石头,
能将剩下的石头一次取光的玩家获胜,每次取石头时,每个玩家只能从若干堆石头中任选一堆,
- lunce创建索引及简单查询
chengxuyuancsdn
查询创建索引lunce
import java.io.File;
import java.io.IOException;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Docume
- [IT与投资]坚持独立自主的研究核心技术
comsci
it
和别人合作开发某项产品....如果互相之间的技术水平不同,那么这种合作很难进行,一般都会成为强者控制弱者的方法和手段.....
所以弱者,在遇到技术难题的时候,最好不要一开始就去寻求强者的帮助,因为在我们这颗星球上,生物都有一种控制其
- flashback transaction闪回事务查询
daizj
oraclesql闪回事务
闪回事务查询有别于闪回查询的特点有以下3个:
(1)其正常工作不但需要利用撤销数据,还需要事先启用最小补充日志。
(2)返回的结果不是以前的“旧”数据,而是能够将当前数据修改为以前的样子的撤销SQL(Undo SQL)语句。
(3)集中地在名为flashback_transaction_query表上查询,而不是在各个表上通过“as of”或“vers
- Java I/O之FilenameFilter类列举出指定路径下某个扩展名的文件
游其是你
FilenameFilter
这是一个FilenameFilter类用法的例子,实现的列举出“c:\\folder“路径下所有以“.jpg”扩展名的文件。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
- C语言学习五函数,函数的前置声明以及如何在软件开发中合理的设计函数来解决实际问题
dcj3sjt126com
c
# include <stdio.h>
int f(void) //括号中的void表示该函数不能接受数据,int表示返回的类型为int类型
{
return 10; //向主调函数返回10
}
void g(void) //函数名前面的void表示该函数没有返回值
{
//return 10; //error 与第8行行首的void相矛盾
}
in
- 今天在测试环境使用yum安装,遇到一个问题: Error: Cannot retrieve metalink for repository: epel. Pl
dcj3sjt126com
centos
今天在测试环境使用yum安装,遇到一个问题:
Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
处理很简单,修改文件“/etc/yum.repos.d/epel.repo”, 将baseurl的注释取消, mirrorlist注释掉。即可。
&n
- 单例模式
shuizhaosi888
单例模式
单例模式 懒汉式
public class RunMain {
/**
* 私有构造
*/
private RunMain() {
}
/**
* 内部类,用于占位,只有
*/
private static class SingletonRunMain {
priv
- Spring Security(09)——Filter
234390216
Spring Security
Filter
目录
1.1 Filter顺序
1.2 添加Filter到FilterChain
1.3 DelegatingFilterProxy
1.4 FilterChainProxy
1.5
- 公司项目NODEJS实践0.1
逐行分析JS源代码
mongodbnginxubuntunodejs
一、前言
前端如何独立用nodeJs实现一个简单的注册、登录功能,是不是只用nodejs+sql就可以了?其实是可以实现,但离实际应用还有距离,那要怎么做才是实际可用的。
网上有很多nod
- java.lang.Math
liuhaibo_ljf
javaMathlang
System.out.println(Math.PI);
System.out.println(Math.abs(1.2));
System.out.println(Math.abs(1.2));
System.out.println(Math.abs(1));
System.out.println(Math.abs(111111111));
System.out.println(Mat
- linux下时间同步
nonobaba
ntp
今天在linux下做hbase集群的时候,发现hmaster启动成功了,但是用hbase命令进入shell的时候报了一个错误 PleaseHoldException: Master is initializing,查看了日志,大致意思是说master和slave时间不同步,没办法,只好找一种手动同步一下,后来发现一共部署了10来台机器,手动同步偏差又比较大,所以还是从网上找现成的解决方
- ZooKeeper3.4.6的集群部署
roadrunners
zookeeper集群部署
ZooKeeper是Apache的一个开源项目,在分布式服务中应用比较广泛。它主要用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步、集群管理、配置文件管理、同步锁、队列等。这里主要讲集群中ZooKeeper的部署。
1、准备工作
我们准备3台机器做ZooKeeper集群,分别在3台机器上创建ZooKeeper需要的目录。
数据存储目录
- Java高效读取大文件
tomcat_oracle
java
读取文件行的标准方式是在内存中读取,Guava 和Apache Commons IO都提供了如下所示快速读取文件行的方法: Files.readLines(new File(path), Charsets.UTF_8); FileUtils.readLines(new File(path)); 这种方法带来的问题是文件的所有行都被存放在内存中,当文件足够大时很快就会导致
- 微信支付api返回的xml转换为Map的方法
xu3508620
xmlmap微信api
举例如下:
<xml>
<return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
<appid><