Quartz认知篇 - 初识分布式任务调度Quartz
定时任务的使用场景
在遇到如下几种场景可以考虑使用定时任务来解决:
- 某个时刻或者时间间隔执行任务
- 批量数据进行处理
- 对两个动作进行解耦
Quartz
介绍
Quartz 是一个特性丰富的、开源的任务调度库,几乎可以嵌入所有的 Java 程序,包括很小的独立应用程序到大型商业系统。Quartz 可以用来创建成百上千的简单的或者复杂的任务,并且这些任务可以作为执行任何事情的标准 Java 组件。Quartz 拥有很多企业级别的特性,包括支持 JTA 事务和集群。
Quartz is a richly featured, open source job scheduling library that can be integrated within virtually any Java application - from the smallest stand-alone application to the largest e-commerce system. Quartz can be used to create simple or complex schedules for executing tens, hundreds, or even tens-of-thousands of jobs; jobs whose tasks are defined as standard Java components that may execute virtually anything you may program them to do. The Quartz Scheduler includes many enterprise-class features, such as support for JTA transactions and clustering.
体系结构
配置触发的规则
定义要执行的任务,代码/脚本
集中管理配置
并发执行任务,互不干扰
调度器控制任务的生命周期
可以集成 Spring、Spring Boot
任务
可以实现 Job 接口来定义一个任务,然后重写它的 execute 方法来定义任务执行的逻辑。
public class MyJob implements Job {private static final Logger LOGGER = LoggerFactory.getLogger(MyJob.class);@Overridepublic void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {JobDataMap jobDataMap = jobExecutionContext.getJobDetail().getJobDataMap();SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");LOGGER.info(simpleDateFormat.format(new Date()) + ", 任务1执行了, " + jobDataMap.getString("hello"));}
}
而调度器的调度方法需要指定一个 JobDetail,即任务明细。JobDetail 可以通过 JobBuilder 的相关方法进行实例化。
JobDetail jobDetail = JobBuilder.newJob(MyJob.class).withIdentity("myJob", "my-job-group").usingJobData("hello", "tom").usingJobData("hi", "selina").build();
接下来,看下 JobBuilder 中定义的一些比较重要的方法。
1、newJob 方法
实例化 JobBuilder(可以指定一个任务)
public static JobBuilder newJob() {return new JobBuilder();
}public static JobBuilder newJob(Class<? extends Job> jobClass) {JobBuilder b = new JobBuilder();b.ofType(jobClass);return b;
}
2、ofType 方法
指定任务
public JobBuilder ofType(Class<? extends Job> jobClazz) {this.jobClass = jobClazz;return this;
}
3、withIdentity 方法
指定任务的名字和组
public JobBuilder withIdentity(String name) {key = new JobKey(name, null);return this;
}public JobBuilder withIdentity(String name, String group) {key = new JobKey(name, group);return this;
}public JobBuilder withIdentity(JobKey jobKey) {this.key = jobKey;return this;
}
4、withDescription 方法
指定任务的描述
public JobBuilder withDescription(String description) {this.description = description;return this;
}
5、requestRecovery 方法
指定任务遇到“recovery”或者“fail-over”情形是否应该重新执行
public JobBuilder requestRecovery() {this.shouldRecover = true;return this;
}public JobBuilder requestRecovery(boolean jobShouldRecover) {this.shouldRecover = jobShouldRecover;return this;
}
6、storeDurably 方法
指定任务是否应该持久化
public JobBuilder storeDurably() {this.durability = true;return this;
}public JobBuilder storeDurably(boolean jobDurability) {this.durability = jobDurability;return this;
}
7、usingJobData 方法
添加一组键值对到 JobDetail 的 JobDataMap 属性中
public JobBuilder usingJobData(String dataKey, String value) {jobDataMap.put(dataKey, value);return this;
}public JobBuilder usingJobData(String dataKey, Integer value) {jobDataMap.put(dataKey, value);return this;
}public JobBuilder usingJobData(String dataKey, Long value) {jobDataMap.put(dataKey, value);return this;
}public JobBuilder usingJobData(String dataKey, Float value) {jobDataMap.put(dataKey, value);return this;
}public JobBuilder usingJobData(String dataKey, Double value) {jobDataMap.put(dataKey, value);return this;
}public JobBuilder usingJobData(String dataKey, Boolean value) {jobDataMap.put(dataKey, value);return this;
}public JobBuilder usingJobData(JobDataMap newJobDataMap) {jobDataMap.putAll(newJobDataMap);return this;
}
8、setJobData 方法
覆盖 JobDetail 的 JobDataMap 属性
public JobBuilder setJobData(JobDataMap newJobDataMap) {jobDataMap = newJobDataMap;return this;
}
9、build 方法
构建 JobDetailImpl 实例
public JobDetail build() {JobDetailImpl job = new JobDetailImpl();job.setJobClass(jobClass);job.setDescription(description);if(key == null)key = new JobKey(Key.createUniqueName(null), null);job.setKey(key); job.setDurability(durability);job.setRequestsRecovery(shouldRecover);if(!jobDataMap.isEmpty())job.setJobDataMap(jobDataMap);return job;
}
触发器
任务触发的规则。
调度器的调度方法需要指定一个 Trigger 实例,即触发器。可以通过 TriggerBuilder 的相关方法构建一个 Trigger 实例。
Trigger trigger = TriggerBuilder.newTrigger().withIdentity("myTrigger", "my-trigger-group").startNow().withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(5).repeatForever()).build();
接下来看下 TriggerBuilder 定义的一些比较重要的方法。
1、newTrigger 方法
构建 TriggerBuilder 实例
public static TriggerBuilder<Trigger> newTrigger() {return new TriggerBuilder<Trigger>();
}
2、withIdentity 方法
设置触发器的名字和组名
public TriggerBuilder<T> withIdentity(String name) {key = new TriggerKey(name, null);return this;
}public TriggerBuilder<T> withIdentity(String name, String group) {key = new TriggerKey(name, group);return this;
}public TriggerBuilder<T> withIdentity(TriggerKey triggerKey) {this.key = triggerKey;return this;
}
3、withDescription 方法
设置触发器的描述
public TriggerBuilder<T> withDescription(String triggerDescription) {this.description = triggerDescription;return this;
}
4、withPriority 方法
设置触发器的优先级(如果有多个启动时间相同的触发器,根据触发器的优先级由大到小的顺序进行启动)
public TriggerBuilder<T> withPriority(int triggerPriority) {this.priority = triggerPriority;return this;
}
5、modifiedByCalendar 方法
设置应用到该触发器调度的 Calendar 的名字
public TriggerBuilder<T> modifiedByCalendar(String calName) {this.calendarName = calName;return this;
}
6、startAt 方法
设置触发器的开始时间
public TriggerBuilder<T> startAt(Date triggerStartTime) {this.startTime = triggerStartTime;return this;
}
7、startNow 方法
设置触发器立即开始
public TriggerBuilder<T> startNow() {this.startTime = new Date();return this;
}
8、endAt 方法
设置触发器的结束时间
public TriggerBuilder<T> endAt(Date triggerEndTime) {this.endTime = triggerEndTime;return this;
}
9、withSchedule 方法
设置用于触发器调度的 ScheduleBuilder
public <SBT extends T> TriggerBuilder<SBT> withSchedule(ScheduleBuilder<SBT> scheduleBuilder) {this.scheduleBuilder = scheduleBuilder;returnt (TriggerBuilder<SBT>) this;
}
10、forJob 方法
设置触发器关联的任务
public TriggerBuilder<T> forJob(JobKey jobKey) {this.jobKey = jobKey;return this;
}public TriggerBuilder<T> forJob(String jobName) {this.jobKey = new JobKey(jobName, null);retun this;
}public TriggerBuilder<T> forJob(String jobName, String jobGroup) {this.jobKey = new JobKey(jobName, jobGroup);return this;
}public TriggerBuilder<T> forJob(JobDetail jobDetail) {JobKey k = jobDetail.getKey();if (k.getName() == null) {throw new IllegalArgumentException("The given job has not yet had a name assigned to it.");}this.jobKey = k;return this;
}
11、usingJobData 方法
添加一组键值对到触发器的 JobDataMap 属性中
public TriggerBuilder<T> usingJobData(String dataKey, String value) {jobDataMap.put(dataKey, value);return this;
}public TriggerBuilder<T> usingJobData(String dataKey, String value) {jobDataMap.put(dataKey, value);return this;
}public TriggerBuilder<T> usingJobData(String dataKey, Integer value) {jobDataMap.put(dataKey, value);return this;
}public TriggerBuilder<T> usingJobData(String dataKey, Long value) {jobDataMap.put(dataKey, value);return this;
}public TriggerBuilder<T> usingJobData(String dataKey, Float value) {jobDataMap.put(dataKey, value);return this;
}public TriggerBuilder<T> usingJobData(String dataKey, Double value) {jobDataMap.put(dataKey, value);return this;
}public TriggerBuilder<T> usingJobData(String dataKey, Boolean value) {jobDataMap.put(dataKey, value);return this;
}public TriggerBuilder<T> usingJobData(JobDataMap newJobDataMap) {for(String dataKey: jobDataMap.keySet()) {newJobDataMap.put(dataKey, jobDataMap.get(dataKey));}jobDataMap = newJobDataMap; return this;
}
12、build 方法
构建具体的 Trigger 实例
public T build() {if(scheduleBuilder == null)scheduleBuilder = SimpleScheduleBuilder.simpleSchedule();MutableTrigger trig = scheduleBuilder.build();trig.setCalendarName(calendarName);trig.setDescription(description);trig.setStartTime(startTime);trig.setEndTime(endTime);if(key == null)key = new TriggerKey(Key.createUniqueName(null), null);trig.setKey(key); if(jobKey != null)trig.setJobKey(jobKey);trig.setPriority(priority);if(!jobDataMap.isEmpty())trig.setJobDataMap(jobDataMap);return (T) trig;
}
SimpleTrigger
时间间隔执行n次(时分秒)
1、simpleSchedule 方法
构建 SimpleScheduleBuilder 实例
public static SimpleScheduleBuilder simpleSchedule() {return new SimpleScheduleBuilder();
}
2、repeat…Forever 方法
指定时间间隔,永久重复执行
// 指定每隔一分钟永久重复执行
public static SimpleScheduleBuilder repeatMinutelyForever() {return simpleSchedule().withIntervalInMinutes(1).repeatForever();
}// 指定每隔多少分钟永久重复执行
public static SimpleScheduleBuilder repeatMinutelyForever(int minutes) {return simpleSchedule().withIntervalInMinutes(minutes).repeatForever();
}// 指定每隔一秒永久重复执行
public static SimpleScheduleBuilder repeatSecondlyForever() {return simpleSchedule().withIntervalInSeconds(1).repeatForever();
}// 指定每隔多少秒永久重复执行
public static SimpleScheduleBuilder repeatSecondlyForever(int seconds) {return simpleSchedule().withIntervalInSeconds(seconds).repeatForever();
}// 指定每隔一小时永久重复执行
public static SimpleScheduleBuilder repeatHourlyForever() {return simpleSchedule().withIntervalInHours(1).repeatForever();
}// 指定每隔多少小时永久重复执行
public static SimpleScheduleBuilder repeatHourlyForever(int hours) {return simpleSchedule().withIntervalInHours(hours).repeatForever();
}
3、repeat…ForTotalCount 方法
指定时间间隔,重复执行直到指定次数
// 每隔一分钟重复执行一次,直到指定次数
public static SimpleScheduleBuilder repeatMinutelyForTotalCount(int count) {if(count < 1)throw new IllegalArgumentException("Total count of firings must be at least one! Given count: " + count);return simpleSchedule().withIntervalInMinutes(1).withRepeatCount(count - 1);
}// 每隔多少分钟重复执行一次,直到指定次数
public static SimpleScheduleBuilder repeatMinutelyForTotalCount(int count, int minutes) {if(count < 1)throw new IllegalArgumentException("Total count of firings must be at least one! Given count: " + count);return simpleSchedule().withIntervalInMinutes(minutes).withRepeatCount(count - 1);
}// 每隔一秒重复执行一次,直到指定次数
public static SimpleScheduleBuilder repeatSecondlyForTotalCount(int count) {if(count < 1)throw new IllegalArgumentException("Total count of firings must be at least one! Given count: " + count);return simpleSchedule().withIntervalInSeconds(1).withRepeatCount(count - 1);
}// 每隔多少秒重复执行一次,直到指定次数
public static SimpleScheduleBuilder repeatSecondlyForTotalCount(int count, int seconds) {if(count < 1)throw new IllegalArgumentException("Total count of firings must be at least one! Given count: " + count);return simpleSchedule().withIntervalInSeconds(seconds).withRepeatCount(count - 1);
}// 每隔一小时重复执行一次,直到指定次数
public static SimpleScheduleBuilder repeatHourlyForTotalCount(int count) {if(count < 1)throw new IllegalArgumentException("Total count of firings must be at least one! Given count: " + count);return simpleSchedule().withIntervalInHours(1).withRepeatCount(count - 1);
}// 每隔多少小时重复执行一次,直到指定次数
public static SimpleScheduleBuilder repeatHourlyForTotalCount(int count, int hours) {if(count < 1)throw new IllegalArgumentException("Total count of firings must be at least one! Given count: " + count);return simpleSchedule().withIntervalInHours(hours).withRepeatCount(count - 1);
}
4、withInterval… 方法
指定时间间隔,执行一次
// 每隔多少毫秒执行一次
public SimpleScheduleBuilder withIntervalInMilliseconds(long intervalInMillis) {this.interval = intervalInMillis;return this;
}// 每隔多少秒执行一次
public SimpleScheduleBuilder withIntervalInSeconds(int intervalInSeconds) {this.interval = intervalInSeconds * 1000L;return this;
}// 每隔多少分钟执行一次
public SimpleScheduleBuilder withIntervalInMinutes(int intervalInMinutes) {this.interval = intervalInMinutes * DateBuilder.MILLISECONDS_IN_MINUTE;return this;
}// 每隔多少小时执行一次
public SimpleScheduleBuilder withIntervalInHours(int intervalInHours) {this.interval = intervalInHours * DateBuilder.MILLISECONDS_IN_HOUR;return this;
}
5、withRepeatCount 方法
指定重复执行的次数
public SimpleScheduleBuilder withRepeatCount(int triggerRepeatCount) {this.repeatCount = triggerRepeatCount;return this;
}
6、repeatForever 方法
指定永久重复执行
public SimpleScheduleBuilder repeatForever() {this.repeatCount = SimpleTrigger.REPEAT_INDEFINITELY;return this;
}
7、withMisfire 方法
设置触发器错过启动时间的补偿策略
public SimpleScheduleBuilder withMisfireHandlingInstructionIgnoreMisfires() {misfireInstruction = Trigger.MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY;return this;
}public SimpleScheduleBuilder withMisfireHandlingInstructionFireNow() {misfireInstruction = SimpleTrigger.MISFIRE_INSTRUCTION_FIRE_NOW;return this;
}public SimpleScheduleBuilder withMisfireHandlingInstructionNextWithExistingCount() {misfireInstruction = SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_EXISTING_COUNT;return this;
}public SimpleScheduleBuilder withMisfireHandlingInstructionNextWithRemainingCount() {misfireInstruction = SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_REMAINING_COUNT;return this;
}public SimpleScheduleBuilder withMisfireHandlingInstructionNowWithExistingCount() {misfireInstruction = SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_EXISTING_REPEAT_COUNT;return this;
}public SimpleScheduleBuilder withMisfireHandlingInstructionNowWithRemainingCount() {misfireInstruction = SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_REMAINING_REPEAT_COUNT;return this;
}
CalendarIntervalTrigger
时间间隔执行一次(年月周日时分秒)
1、calendarIntervalSchedule 方法
构建 CalendarIntervalScheduleBuilder 实例
public static CalendarIntervalScheduleBuilder calendarIntervalSchedule() {return new CalendarIntervalScheduleBuilder();
}
2、withInterval…方法
每隔多少时间间隔执行一次
// 每隔多少时间单位执行一次
public CalendarIntervalScheduleBuilder withInterval(int timeInterval, IntervalUnit unit) {if(unit == null)throw new IllegalArgumentException("TimeUnit must be specified.");validateInterval(timeInterval);this.interval = timeInterval;this.intervalUnit = unit;return this;
}// 每隔多少秒执行一次
public CalendarIntervalScheduleBuilder withIntervalInSeconds(int intervalInSeconds) {validateInterval(intervalInSeconds);this.interval = intervalInSeconds;this.intervalUnit = IntervalUnit.SECOND;return this;
}// 每隔多少分钟执行一次
public CalendarIntervalScheduleBuilder withIntervalInMinutes(int intervalInMinutes) {validateInterval(intervalInMinutes);this.interval = intervalInMinutes;this.intervalUnit = IntervalUnit.MINUTE;return this;
}// 每隔多少小时执行一次
public CalendarIntervalScheduleBuilder withIntervalInHours(int intervalInHours) {validateInterval(intervalInHours);this.interval = intervalInHours;this.intervalUnit = IntervalUnit.HOUR;return this;
}// 每隔多少天执行一次
public CalendarIntervalScheduleBuilder withIntervalInDays(int intervalInDays) {validateInterval(intervalInDays);this.interval = intervalInDays;this.intervalUnit = IntervalUnit.DAY;return this;
}// 每隔多少周执行一次
public CalendarIntervalScheduleBuilder withIntervalInWeeks(int intervalInWeeks) {validateInterval(intervalInWeeks);this.interval = intervalInWeeks;this.intervalUnit = IntervalUnit.WEEK;return this;
}// 每隔多少月执行一次
public CalendarIntervalScheduleBuilder withIntervalInMonths(int intervalInMonths) {validateInterval(intervalInMonths);this.interval = intervalInMonths;this.intervalUnit = IntervalUnit.MONTH;return this;
}// 每隔多少年执行一次
public CalendarIntervalScheduleBuilder withIntervalInYears(int intervalInYears) {validateInterval(intervalInYears);this.interval = intervalInYears;this.intervalUnit = IntervalUnit.YEAR;return this;
}
3、withMisfire… 方法
设置触发器错过启动时间的补偿策略
public CalendarIntervalScheduleBuilder withMisfireHandlingInstructionIgnoreMisfires() {misfireInstruction = Trigger.MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY;return this;
}public CalendarIntervalScheduleBuilder withMisfireHandlingInstructionDoNothing() {misfireInstruction = CalendarIntervalTrigger.MISFIRE_INSTRUCTION_DO_NOTHING;return this;
}public CalendarIntervalScheduleBuilder withMisfireHandlingInstructionFireAndProceed() {misfireInstruction = CalendarIntervalTrigger.MISFIRE_INSTRUCTION_FIRE_ONCE_NOW;return this;
}
4、inTimeZone 方法
设置时区
public CalendarIntervalScheduleBuilder inTimeZone(TimeZone timezone) {this.timeZone = timezone;return this;
}
5、build 方法
构建 CalendarIntervalTriggerImpl 实例
@Override
public MutableTrigger build() {CalendarIntervalTriggerImpl st = new CalendarIntervalTriggerImpl();st.setRepeatInterval(interval);st.setRepeatIntervalUnit(intervalUnit);st.setMisfireInstruction(misfireInstruction);st.setTimeZone(timeZone);st.setPreserveHourOfDayAcrossDaylightSavings(preserveHourOfDayAcrossDaylightSavings);st.setSkipDayIfHourDoesNotExist(skipDayIfHourDoesNotExist);return st;
}
DailyTimeIntervalTrigger
CronTrigger
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-4500282.html
如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!
linux代码怎么运行gedit,Linux中gedit命令起什么作用呢?
摘要:下文讲述Linux中gedit的功能说明,如下所示;gedit命令是GNOME桌面环境中的官方文本编辑器gedit命令功能:用于创建和编辑各种文本文件gedit命令的语法格式:gedit [参数]-----常用参数说明--------list-encodings:输出可使用的编码选项列表…...

vue-router 使用与原理分析,测试结果来啦
简介 Vue Router 是Vue.js的官方路由。与Vue.js核心深度集成,让用Vue.js构建单页应用(SPA)变得更加简单。 对于开发和维护管理后台类的前端项目,页面结构和组合可能非常复杂,所以正确的理解和使用Vue Router就显得尤为…...

将海康摄像机发布萤石云指南
1、设置摄像机基本属性。 (1)给摄像机加电,并使用网线将摄像机接入的网络; (2)安装海康工具SADPTool,安装完成后,打开工具。确保(1)步骤执行后,…...

项目中better-scroll的常用配置、插件介绍
文章目录介绍最常见的应用场景是列表滚动滚动原理安装全部安装按需安装(推荐)插件使用插件常用插件pullUpobserve-domobserve-image常用配置项clickprobeType常用注意事项在vue中使用建议用ref属性绑定scroll对象介绍 BetterScroll 是一款重点解决移动端…...

CSS3——给div设置背景图片
<!DOCTYPE html> <html><head><meta charset"utf-8" /><style type"text/css">*{margin: 0;padding: 0;}div{width: 200px;height: 200px;border: 1px solid black;background-image: url(css.jpg);/* 引入图片 */backgroun…...

微服务的数据管理模式
微服务的关键组件之一是如何管理和访问数据。与传统的单片或三层应用程序相比,执行此操作的方法有所不同。一些模式很常见,但其他模式是特定的,需要在纳入解决方案之前进行评估。在探索 CQRS(包括它与 CRUD 的区别)之前…...

分享几个Mac下对象存储客户端的工具
1、s3cmd 这应该是比较出名的s3客户端工具了吧,首选它肯定没错了。 mac下使用brew安装即可 brew install s3cmd 2、mc mc是minio实现的客户端,用起来很是方便,但是有时候不知为何突如其来会有一些bug,日常使用还是没什么大问题…...

HTML在线visio进行简单布局,visio2007教程
CSS布局HTML小编今天和大家分享Visio视频教程,要完整全套的这种可以吗 Visio2010实例视频教程。CSS布局HTML小编今天和大家分享~~~Visio 2007入门教程MicrosoftOfficeVisio入门教程关于MicrosoftOfficeVisio环境如何创建和共享图表如何创建形状、模具和模板…...
淘宝双十一实时显示成交数据是怎么实现的?
阿里会在双 11 的当天竖起一面大的电子屏幕,实时展示淘宝这一天的成绩。例如成交额、访问人数、订单量、下单量、成交量等等。这个电子大屏的背后,就是用到我们所说的数据的实时处理技术。当然实时计算也不是完全实时,它一定有一个延时&#…...

multimap学习之创建,初始化,赋值操作operator=, empty,size,max_size
multimap 是关联容器,含有键值对的已排序列表,其功能与map一样,唯一不同的是,它容许多个元素拥有同一键。本篇学习map的创建,初始化,赋值操作operator, empty,size,max_size 示例代码: #inclu…...

计算机毕业设计ssm+vue基本微信小程序的好物推荐分享系统
项目介绍 我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,好物分享系统小程序被用户普遍使用,为方便用户…...

Column AND Row Posted by David Dobrin
Let me start with stuff that we all know. HANA is a database. In the database, there are tables. The tables are essentially blank spaces where you can load collections of fields called records. In a row-oriented database, each row in the table contains a...

android游戏备份农场,zynga旗下的虚拟农场farmville将正式进入android平台
zynga从facebook扩张到iphone本身是一个很重要的过程,现在有消息称farmville可能进一步支持android平台。这个消息对于android来讲是值得期待的。farmville-thumb之前很多人信誓旦旦地认为zynga不会开发出支持智能手机的farmville游戏,但是事实上这个断言…...

Zynga危机加剧!亚马逊参战社交游戏蓄谋已久!
亚马逊在稍早的时候对外发布了首款社交游戏Living Classics,并宣布成立一个名叫亚马逊游戏工作室(Amazon Game Studios)的部门。这意味着社交游戏这个行业的竞争将会更加激烈,这对于四面楚歌的Zynga来说并不是好事。我并不认为亚马…...
自定义ProgressBar样式
转载注明出处: http://blog.csdn.net/forwardyzk/article/details/42609491 我们使用的进度条多种多样,下面有几种自定义的进度条的样式,下面介绍几个. 进度条的有基本的四种样式: 默认风格的进度条: android:progressBarStyle 水平长型进度条: an…...
机器学习经典算法-人工神经网络之反向传播算法
机器学习经典算法-人工神经网络之反向传播算法 简介 人工神经网络的研究在一定程度上受到了生物学的启发,因为生物的学习系统是由相互连接的神经元组成的异常复杂的网络。而人工神经网络与此大体相似,它是由一系列简单单元相互密集连接构成,…...
神经网络的前向计算和反向传播算法
首先明确两点: 前向传播求损失,反向传播回传误差;每个神经元都可以根据误差修正权重。 一、前向计算 我们以下图的三层神经网络为例,介绍前向传播和反向传播。 输入层为[x1, x2, x3],权重为b1,输入的形状…...

【JavaSE】第一个Java程序,“Write once, Run anywhere“——JDK、JRE、JVM的简单介绍
文章目录第一个Java程序可能会出现的问题如何实现"Write once, Run anywhere"第一个Java程序 在之前的学习中,我们走进了Java的世界,安装了JDK并且配置了环境变量,完成这些之后我们就可以在我们的电脑上写一个简单的Java程序了。首…...

运维的知识点_万金油_新浪博客
一。nginx 1.安装部署 1.1注意要用普通用户启动软件1.2安装软件的模块1.3make && make install 编译并安装1.4.使用 路劲来启动软件二。nginx 的版本升级————————服务是否起来可以检测端口号的打开情况2.1二 要下载新的版本软件包,2.2 备份老…...

[数据库原理] 函数依赖关系
函数依赖概念 函数依赖是指关系中属性间的对应关系。 函数依赖是从数学角度来定义的,在关系中用来刻画关系各属性之间相互制约而又相互依赖的情况。函数依赖普遍存在于现实生活中,比如,描述一个学生的关系,可以有学号、姓名、所在…...

什么是烧录?
什么是烧录?芯片烧录是什么意思?IC需要烧录的原因芯片烧录是什么意思? 烧录就是程序员写好的程序,把程序导入到目标IC上面,实行一个完整的动作。 烧录的过程我们这边叫做编程,也有地方叫做 ic copy。在大陆这边,一…...

什么是开源软件?
什么是开源软件? 开源软件就是把软件程序与源代码文件一起打包提供给用户。用户既可以不受限制地使用该软件的全部功能,也可根据自己的需求修改源代码,修改完之后再发布出去。 用户具有使用自由、修改自由、重新发布自由,因此开…...

【MATLAB】手把手教你安装MATLAB R2021b(内含安装包)
系列文章目录 第一章 MATLAB入门之安装篇 目录 系列文章目录 前言 一、第一步,下载安装包 二、安装MATLAB 1.打开setup.exe 2 按操作进行 3 替换dll 文件 总结 前言 MATLAB是美国MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度…...

Vue中的动态加载组件
Vue中动态组件加载 背景:在vue中,内容过多,需要采用分解成不同的组件,在父组件中引入子组件,常见的有静态引入(在某一个组件中指定引入某一个子组件)以及动态引入(在组件中根据不同…...

计算机软件安装包后缀名,软件安装包程序是什么
手机这个 软件安装包程序在什么位置,一般叫什么已安装软件的安装包可以删除,不影响软件的运行。1、软件完成安装后,代表程序已经存在于电脑硬盘内并可以运行。2、软件完成安装后,安装包实际上已经完成了其历史使命,可以直接通过桌…...

基于LSTM交通客流预测(完整的代码+数据)
项目说明: 以某地铁站系统的用户客流量数据为基础,补充研究当日包含的天气因素等数据,完成基于地铁出行平常日(不包含节假日)客流量数据的训练,实现对地铁站点的客流进行分析和预测。 任务要求: 通过 2019 年某地铁站的日客流量数据以及,每日天气因素的数据,进行相关数据…...

08_星仔带你学Java之什么是软件开发以及软件开发方式有哪些?
大家好,我是💖星仔💖。一个致力于为大家分享各种Java知识的博主。 ✨专栏汇总✨ 🍋《星仔带你部署银河麒麟RAM架构服务器》 🍋《星仔带你学消息队列(RebbitMQ)》 🍋《星仔带你学Java…...

Python range取值问题
for i in range(1,5): print(i); [1, 2, 3, 4] 代表取值范围为1至65,不包含5 range(6) #代表取值范围为0至6,不包含6 [0, 1, 2, 3, 4, 5] range(1,6,2) #代表取值范围为1至6,其中间隔为2,不包含6 [1, 3, 5]...

文本特征提取和向量化
转自:https://fancoo.wordpress.com/2016/03/09/三-文本特征提取和向量化/在(二)中,我已经能获取每个词条在百度搜索下的结果。我将所有的可疑词条的百度搜索结果保存为文件。每一行文本是一个词条的搜索结果。例如,我有728个可以词条&#x…...

解密Zynga:专注 流水线 数据控
20年历史的暴雪娱乐(Blizzard Entertainment)和29年历史的电子艺界(Electronic Arts)之间的对决不再引人瞩目,因为全球最热门游戏公司的桂冠已被Zynga摘走。 社交网站的崛起使数十亿互联网用户迷恋上轻松的社交游戏。相比之下,暴雪和电子艺界擅长的大型…...

大数据Spark“蘑菇云”行动-第14课Scala集合上的函数式编程实战及Spark源码鉴赏
集合一定是可以迭代的。 1、在Scala的集合体系中Iterable是共同的Trait,Iterable要求继承者实现一些共同的方法,例如对元素的遍历等; 2、Array是一个非常基础的数据结构,不从属于Scala集合的体系; 3、Range示例&…...

DVWA-xss-dom
xss—dom DOM XSS:通过修改页面的DOM节点形成的XSS。 可触发DOM-XSS的属性: document.referer ,window.name ,location, innerHTML, document.write low级别 提交参数发现是以get的方式提交的,可以尝试注入 注入pyload:发现产…...

简单的朴素贝叶斯算法实现英文文本分类(Python实现)
简单的朴素贝叶斯算法实现英文文本分类(Python实现) 文章目录简单的朴素贝叶斯算法实现英文文本分类(Python实现)前言一、朴素贝叶斯算法的简要介绍1.主要步骤(1)创建你的特征——数字化你的要素࿰…...

时代和人民的精神脉动
时代和人民的精神脉动 ——读《大地的脉动——河套治水回望》 一 近日读牛丽萍、杨桂林合著的生态纪实文学《大地的脉动——河套治水回望》,为书中展现的河套人的精神所感动。作家半夏说,生态文学不仅仅只以人的角度出发,它关注的是人与自然…...

Java学习笔记3.5.4 继承 - Object类
文章目录 零、本讲学习目标一、Object类概述二、Object类的继承(一)显式继承(二)隐式继承(三)查看类层次结构三、Object类常用方法四、重写toString()方法(一)创建动物类(二)创建测测动物类(二)查看Object类toString()方法源码(三)重写动物类toString()方法(四)…...

[THUPC2019]历史行程
[THUPC2019]历史行程 题目背景 人生是怎么样的呢?我们是怎样活着的呢? 无论是谁,都是从黑暗中降生,最后再回归于黑暗。几年,几十年,短暂而漫长的时光。形形色色的人,形形色色的事,如…...

YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
YOLOv7出来也有一段时间了,在刚出来的时候我就抢先体验了一把,当时主要是就是尝尝鲜,没有实际项目落地,所以也就没有去用很多数据集,也没有对模型进行评估计算,在前面的系列博文里面已经做了记录,感兴趣的话可以去看下: 《基于yolov4作者最新力作yolov7目标检测模型实现…...

Zynga就收购顶尖移动设备游戏《Toon Blast》和《Toy Blast》的开发商伊斯坦布尔Peak公司达成协议
旧金山--(美国商业资讯)--互动娱乐领域的全球领军企业Zynga Inc. (Nasdaq: ZNGA)今日宣布,公司已就以18亿美元收购Peak达成最终协议。Peak是全球最成功的移动设备游戏公司之一,将为Zynga带来100人的强大团队和两个永久授权游戏品牌——《Toon Blast》和《…...

公众号校园网课查题功能搭建
公众号校园网课查题功能搭建 本平台优点: 多题库查题、独立后台、响应速度快、全网平台可查、功能最全! 1.想要给自己的公众号获得查题接口,只需要两步! 2.题库: 查题校园题库:查题校园题库后台…...

百度数据众包,一门AI新基建的“基建”生意
文/智能相对论(aixdlun) 作者/叶远风 AI成了新基建的C位,不论是原本就以AI立身的百度,还是纷纷在技术上加大投入以拥抱新基建的阿里、腾讯等巨头,最近都显出强化AI地位的态势。 在AI新基建浪潮下,其背后…...

C++ STL容器底层详解
转载自:CSTL的容器的底层实现详解 文章目录顺序容器vector(向量容器)deque(双端队列)liststackqueuepriority_queue关联式容器setmultisethash_setmap(key,value)multimaphashtablehash_mapunordered_mapma…...

HTML5期末考核大作业,电影网站——橙色国外电影 web期末作业设计网页
HTML实例网页代码, 本实例适合于初学HTML的同学。该实例里面有设置了css的样式设置,有div的样式格局,这个实例比较全面,有助于同学的学习,本文将介绍如何通过从头开始设计个人网站并将其转换为代码的过程来实践设计。 文章目录一、网页介绍一…...

RHCSA认证考试---2.给系统配置默认的存储库
红帽RHCE考试上午-RHCSA(RH200) servera.example.com 任务 2. 给系统配置默认存储库,要求如下: YUM 的两个存储库的地址分别是: http://content.example.com/rhel8.2/x86_64/dvd/BaseOS http://content.example.com/r…...

项目实战--传智健康
传智健康项目 2022.3.2-2022.3.16 --BDY 文章目录传智健康项目项目介绍及技术架构一、项目流程1.后台管理系统编写2.微信端预约系统编写在这里插入图片描述3.图形展示及权限控制4.数据库设计5.项目总框架和配置二、项目代码收获1.与前端页面交互(springmvc)2.服务层(spring)3.…...

显卡的测试软件是什么,你的显卡是什么水平,用这个软件就知道了
今天要来跟大家推荐一个 显卡的跑分和压力测试的软件 -3DMark 这个软件是目前最有公信力的显卡跑分软件。 如果说你很常买显卡的话 我会非常推荐你入手。不过估计没人会愿意花钱买这个软件的吧。那我们接下来教大家如何使用这个软件, 现在下载安装好之后 ࿰…...

科技视界杂志科技视界杂志社科技视界编辑部2022年第18期目录
科技视界杂志科技视界杂志社科技视界编辑部2022年第18期目录 医学科普 耳鸣耳聋,孰先孰后? 孙珊; 1-4 科技广角 双碳目标下生物质能发展现状及应用路径研究 梁志松;何楠;周旺;周顺龙;林曦鹏; 5-7 基于APDL的ANSYS梁单元划分插件开发 张发荣…...

面试 文件系统基本组成和虚拟文件系统
文件系统的基本组成 Linux 最经典的一句话是:「一切皆文件」,不仅普通的文件和目录,就连块设备、管道、socket 等,也都是统一交给文件系统管理的。 Linux 文件系统会为每个文件分配两个数据结构:索引节点(…...
windriver helix virtual platform
2692407267qq.com,更多内容请见http://user.qzone.qq.com/2692407267/ windriver helix virtual platform...

有什么优质的计算机专业书籍?操作系统、计算机网络、计算机组成、数据结构、数据库.....
大家好,我是小林哥。 平日里,大家都喊程序员加班多很辛苦,动不动就掉头发,但干的还是很香的,毕竟大多数公司钱还是给的很到位的,今年毕业应届生的我见到好多动不动就月薪 20K~30K 的,真让人两眼…...

合天实验室CTF 基础100 flag就在这儿
原题链接 下载txt,打开发现全是三维数组。容易想到是RGB三原色数组。 思路: 把数组转化为图片,再看看有没有什么特别的地方。利用python的PIL库容易实现。 PIL库的安装就不多说了。参考windos,python3.x安装PIL下面要确定…...

以太网基础理论—MAC+PHY
简介 MAC (Medium Access Control),简称媒体访问控制。MAC层在OSI模型中是属于数据链路层,其主要任务是解决数据包发给谁。数据链路层包含MAC(介质访问控制)子层和LLC(逻辑链路控制)…...

《Python数据分析与应用》第6章 使用sklearn构建模型 实训部分
《Python数据分析与应用》第6章 使用sklearn构建模型 实训部分((源于大学课程python数据分析)) 实训1 使用sklearn处理wine和wine_quality数据集 1.使用pandas库分别读取wine数据集 2.将wine数据集和wine_quality数据集的数据和标签拆分开 拆分wine数据集 和wine_quality数…...
vue 动态添加组件
vue 利用数组循环动态添加组件 1. 实现效果: 当第一个框输入内容之后,点击添加,动态添加第二个输入框,以此类推; 2. 实现思想: 构建需要动态添加的模板,利用 v-for 循环模板。 通过 index …...

ym——android源码大放送(实战开发必备)
转载请注明本文出自Cym的博客(http://blog.csdn.net/cym492224103),谢谢支持! 文件夹 PATH 列表 卷序列号为 000A-8F50 E:. │ javaapk.com文件列表生成工具.bat │ 使用说明.txt │ 免费下载更多源码.url │ 目录列表.txt …...

java爬虫框架 httpclient_Java爬虫框架简介
爬虫1. 流程1) Scheduler启动爬虫器,TaskMaster初始化taskQueue2) Workers从TaskQueue中获取任务3) Worker线程调用Fetcher爬取Task中描述的网页4) Worker线程将爬取到的网页交给Parser解析5) Parser解析出来的数据送交Handler处…...

Axure8.0汉化包+注册码
工欲善其事,必先利其器。 1、软件下载地址:https://www.axure.com/ 2、汉化包下载地址: http://download.csdn.net/download/jiang_rong_tao/9993806 3、密钥: Licensee: 米 业成 (STUDENT) Key: nFmqBBvEqdvbiUjy8NZiyWiRSg…...

MFC 多线程编程总结
MFC 多线程编程总结************ 写在前面*************1、进程与线程1.1、进程1.2、线程1.3、进程与线程的区别(常见面试题)2、线程创建的三种方式2.1、CreateThread(需要手动关闭线程句柄)2.2、AfxBeginThread(会自动…...

培训python费用
Python真是越来越受欢迎了,想报个Python培训班,不知道培训费用多少,是不是都很贵呢?我是不是承担得起等等。现在由路飞学城老师给大家详细说下! 在人工智能开启的时代,Python作为人工智能的首选语言&#…...

H5 引用vue 打开app(如何该手机内有某个app则直接打开app,如果没有则跳转app下载页面)
H5 引用vue 打开app(如何该手机内有某个app则直接打开app,如果没有则跳转app下载页面) **ps: 一定一定一定一定先向 ios要 ( ios下载地址 和 ios对应的app协议 ),找安卓要( android…...
钢琴--入门
我也不知道为什么,就是今天突然想记一下 简谱:1 2 3 4 5 6 7 8 音名:C D E F G H A B 五线谱...

五线谱入门(二)
目录 音乐是什么五线谱难不难五线谱入门有了五线谱,我们能干什么上一篇我们简单介绍了音名(《五线谱入门,程序员也可以玩音乐》),这篇我们正式来聊五线谱,今天写的有点晚,写到哪里算哪里吧。 3.…...

快解析远程访问解决方案——安全稳定,部署简单
我们说的远程办公通常指狭义上的远程办公,是指通过远程技术,或远程控制软件,对远程电脑进行操作办公,实现非本地办公,如在家办公、异地办公、移动办公等远程办公模式。这种技术的关键在于:穿透内网和远程控制的安全性。…...

hive动态插入数据SemanticException [Error 10096]: Dynamic partition strict mode requires at least one stati
FAILED: SemanticException [Error 10096]: Dynamic partition strict mode requires at least one static partition column. To turn this off set hive.exec.dynamic.partition.modenonstrict 解决方案: set hive.exec.dynamic.partition.modenonstrict;...

express-stati访问静态文件在express中的问题
在项目的目录下有upload文件夹,里面有1.png图片。 但我启动项目后,访问http://localhost:8888/1.png一直就是访问根目录,这是为什么啊? 当去掉根目录这个路由就正常了。const expressrequire(express); const expressStaticrequir…...

Server.obj : error LNK2019: unresolved external symbol “public: stati
一直报错找不到符号,可以在VS的文件目录列表找到此文件,看一下是否有个红色的点,右键点击加入到项目后就不报这个错误了。...

springboot中stati静态资源只能访问一层
突然出现static下面的资源,如果有深度文件夹存放,就访问不到。 //访问不到 http://localhost:8080/js/boat.png //可以访问到 http://localhost:8080/boat.png这个问题,关掉idea重启就好了。或者重新编译下,看看静态资源是否到ta…...

SpringBoot中变量注入方案(静态和非静态)
value注入静态变量时需要特殊处理,直接注入的话会注入失败。 Value注入变量是在类的构造函数之后执行的,所以在构造函数中拿不到注入的变量。 普通注入 配置文件 注入 Value("${custom.mqtt.enabled}")public Boolean enabled;注入静态变量 …...

9.30. Statistics Information Functions
9.30 统计信息相关函数 PostgreSQL提供用以检索 CREATE STATISTICS命令生成的统计信息。 9.30.1. Inspecting MCV Lists 9.30.1 检查MCV(most-common values)列表 pg_mcv_list_items ( pg_mcv_list ) → setof record pg_mcv_list_items返回在多列M…...

【多线程】虚假唤醒(什么时候用while,什么时候用if)
那什么是假唤醒? 当一个条件满足时,很多线程都被唤醒了,但是只有其中部分是有用的唤醒,其它的唤醒都是无用功比如说买货,如果商品本来没有货物,突然进了一件商品,这是所有的线程都被唤醒了但是…...

warning: ‘stati’ declared ‘static’ but never defined [-Wunused-function] static void Function_A( );
1、某源文件.c中包含函数: static void Function_A() { … } 2、某头文件.h文件中有函数Function_A的声明: //.h static void Function_A( ); 3、源文件.c中include进common.h 【编译报错】:warning: ‘stati’ declared ‘static’ but nev…...

C语言quick sort快速排序的算法(附完整源码)
C语言quick sort快速排序的算法 C语言quick sort快速排序的算法完整源码(定义,实现)C语言quick sort快速排序的算法完整源码(定义,实现) #ifndef QUICK_SORT_H #define QUICK_SORT_H#include <generic.h>namespace algo {//Partition routine for quicksorttemplate…...

DCMTK:Irradiation事件识别测试FG类
DCMTK:Irradiation事件识别测试FG类 Irradiation事件识别测试FG类Irradiation事件识别测试FG类 #include "dcmtk/config/osconfig.h" #include "dcmtk/dcmfg/fginterface.h" #include "dcmtk/dcmfg/fgirradiationeventid.h" #include "d…...

boost::callable_traits的is_const_member的测试程序
boost::callable_traits的is_const_member的测试程序 实现功能C++实现代码实现功能 boost::callable_traits的is_const_member的测试程序 C++实现代码 #include <type_traits> #include <boost/callable_traits/is_const_member.hpp> namespace ct = boost::cal…...

获取文件信息函数:_stat, _stat64, _stati64, _wstat, _wstat64, _wstati64
这是微软的文件状态函数族的文档。 函数名:_stat, _stat64, _stati64, _wstat, _wstat64, _wstati64 功能:获取文件的信息 以下是各函数原型:int _stat(const char *path,struct _stat *buffer ); int _stat64(const char *path,struct __st…...

黑马程序员-面向对象(stati、this关键字)
---------------------- ASP.NetAndroidIOS开发、.Net培训、期待与您交流! ---------------------- this关键字的使用 代码示例: Person(String name) { //this(); this.name name; } Person(String name,int age) { //this(name); //this.name nam…...

解决QT提示No previous extern declaration for non-static variable 'sss'
首先感谢QT Creator 4.8.0的代码提示功能,让我意识到我的一个长期不规范行为。 之前定义全局变量: 1、在1.cpp文件直接写例如 int test; 2、如果2.cpp需要使用test时,一般我会直接在2.cpp直接加extern int test; 其实这是不规范的&#x…...

一个IDE的提示,引发了对《Java编程思想》的质疑?
前言 最近在读slf4j的源码,同时在B站录一套读源码的课程(av:BV1KD4y197Jf),其中一个简单的IDE编码规范的提示,因为多问了几个为什么导致一系列Java基础知识的追踪和验证,最近竟然发现《Java编程思想》书中…...
spring boot 源码解析35-CacheStatisticsProvider,CacheStatistics
前言 讲过前面2篇文章的讲解,我们知道了spring boot 是如何集成spring cache的,那么我们接着来看一下org.springframework.boot.actuate.cache 中有关cache的实现.这部分的类图如下: 我们本文关于CacheStatisticsProvider的实现只讲解EhCacheStatisticsProvider,ConcurrentMap…...

关于单例模式的线程安全问题讨论以及加锁时机之我的想法
昨晚和朋友讨论这个单例模式的加锁问题,因为我们是一个老师教出来的嘛,平时关系也好,在一个项目的一个细节上我们出了点不同意见。 就是一个单例,到底要不要单例? 为什么要或者为什么不要? 单例模式是不是线…...

_stati64()获取文件信息
Get status information on a file. int _stat( const char *path, struct _stat *buffer ); __int64 _stati64( const char *path, struct _stat *buffer ); int _wstat( const wchar_t *path, struct _stat *buffer ); __int64 _wstati64( const wchar_t *path, struct...

解密main函数 和this,static关键字,以及用java命令传参
类内部构造函数之间的相互调用,不同于一般的函数调用,不能用构造函数名,而是直接用this关键字加参数,注意,this后面没有“点函数名”。而且,this语句只能定义在构造函数的第一行;注意࿰…...

Error starting static Resources 问题
今天遇到了个 Error starting static Resources 异常问题! 刚开始启动tomcat的时候就报 Servlet /iaf-platform-service threw load() exception javax.servlet.UnavailableException: Please specify a valid services.configuration.f…...

sizeof的作用——解释类中与类之外static变量的情况
原文: http://blog.csdn.net/yanqi3310510/article/details/34854669 今天看程序员面试宝典的时候遇到一个问题,书上有这么一句话:sizeof计算栈中分配的大小。咋一看这句话的时候,很不理解,难道像函数中类似于static、extern con…...

public static final什么意思?关于Java中public static final int 的用法?public static final, 跟 public final stati
public static final :全局常量static是为了让其成为类的成员,而不是对象的成员,这样用起来就方便了 public是为了方便访问 final则是表明这是个常量,不能修改 private的对象,然后定义get、set是为了访问控制,是一种…...

深大操作系统:xv6 综合实验二:有名管道,内存交换,文件权限,线程
目录前言1. 线程2. 文件权限3. 内存交换4. 有名管道(fifo)总结附录:xv6 磁盘操作常见 panic 原因汇总1. panic bget no buffers2. panic log_write out of trans3. panic incorrect blockno4. panic balloc out of blocks前言 这是本学期最后…...

tomcat 启动时报Error starting static Resources错误
tomcat 启动时报Error starting static Resources错误解决方法: 1、停掉tomcat 2、删除 tomcat\conf\Catalina\localhost 下的文件 3、删除tomcat\work 下的Catalina文件夹 4、重新启动tomcat...

问题:为什么static 会比程序入口先执行?
问题:为什么static 会比程序入口先执行? 先来说static static是静态标志,包括静态代码块,静态成员变量,静态方法 在用static 方法前没有创建任何对象,static是最先进行初始化的 ,所以有: 1. 静…...

大数据技术架构(组件)——Hive:环境准备2
1.0.1.5、Mysql安装1.0.1.5.1、软件包下载解压缩官网或者直接从百度云盘中下载即可。https://dev.mysql.com/downloads/mysql/1.0.1.5.2、环境变量配置1.0.1.5.2.1、创建系统环境变量MYSQL_HOME1.0.1.5.2.2、将系统环境变量配置到Path上1.0.1.5.2.3、生成Data文件使用系统管理员…...

JDK8新特性之Stream流【小白快速上手,没有技巧全是实操-LOL英雄类讲解不失趣味】
前言 摘取自jdk1.8官方文档对于Stream类定义的谷歌翻译 流管道由源(可能是数组、集合、生成器函数、I/O 通道等)、零个或多个中间操作(将流转换为另一个流,例如 filter(Predicate) ) 和终端操作(产生结果或副作用&…...

opencv绘制基本图形及文字
OpenCV中可以绘制的图形有直线、矩形、多边形、圆、椭圆。以及一个写文本的函数puttext 1. 基本函数Line C: void line(Mat& img, Point pt1,Point pt2, const Scalar& color, int thickness1, int lineType8,int shift0) Parameters:img – 图像.pt1 – 线条起点.pt2 …...
学习OpenCV2——绘制基本图形及文字
OpenCV中可以绘制的图形有直线、矩形、多边形、圆、椭圆。以及一个写文本的函数puttext 1. 基本函数 Line C: void line(Mat& img, Point pt1,Point pt2, const Scalar& color, int thickness1, int lineType8,int shift0)Parameters:img – 图像. pt1 – 线条起点. …...

深入浅出CChart 每日一课——快乐高四第四十八课 祖龙一脉,在WPF中使用CChart
什么是WPF? WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作&…...

从0到1 拿下C语言——绪论(计算机的组成、进制转换、算法表示、程序结构、C语言基本词汇)
关注一下阿酱趴!😃😃😃 前言: 🙆♂️ 作者简介:一碗黄豆酱 🙆♂️ 给大家带来快乐的就是阿酱我! 🎈 CSDN 勤写标兵!、上兰村编程小能手&…...
FreeRTOS高级篇7---FreeRTOS内存管理分析
目录 1. heap_1.c 2. heap_2.c 3.heap_3.c 4.heap_4.c 5.heap_5.c 内存管理对应用程序和操作系统来说都非常重要。现在很多的程序漏洞和运行崩溃都和内存分配使用错误有关。 FreeRTOS操作系统将内核与内存管理分开实现,操作系统内核仅规定了必要的内存…...

Spring Boot 1.5.3 源码深入分析
更多springboot2.X文章请移步至博主专栏:spring boot 2.X/spring cloud Greenwich 目录 1. 项目初始化过程 springboot启动类 SpringFactoriesLoader工厂加载机制...

spring boot 2.1学习笔记【六】SpringBoot 2集成MySQL,Spring Data JPA
springboot系列学习笔记全部文章请移步值博主专栏**: spring boot 2.X/spring cloud Greenwich。 由于是一系列文章,所以后面的文章可能会使用到前面文章的项目。springboot系列代码全部上传至GitHub:https://github.com/liubenlong/springboot2_demo 本系列环境:Java11;s…...

python 多线程编程并不能真正利用多核的CPU
GIL 与 Python 线程的纠葛 GIL 是什么东西?它对我们的 python 程序会产生什么样的影响?我们先来看一个问题。运行下面这段 python 程序,CPU 占用率是多少? # 请勿在工作中模仿,危险:) def dead_loop():while True: pas…...

letter-shell | 一个功能强大的嵌入式shell
嵌入式开源项目精选专栏 本专栏由Mculover666创建,主要内容为寻找嵌入式领域内的优质开源项目,一是帮助开发者使用开源项目实现更多的功能,二是通过这些开源项目,学习大佬的代码及背后的实现思想,提升自己的代码水平&…...

C小白Jeff头秃的第六天:函数使我快乐!
函数 c语言中管理函数的最小代码,一个函数就是一段具有某项功能的代码段。其实就是一段二进制数。,存储在只读(代码的封装) 通过调用(函数名(参数))的方式执行,执行完后…...

小张学linux内核: 9. slab分配器
概述 slab分配器,不是按页进行分配的,而是按字节来分配的。slab分配器向页框分配器也就是伙伴系统申请page,然后进行自己的管理,进行字节的分配,slab分配器为"打通铺"的分配思想。kmalloc,和内核…...

手把手教你使用ThreadLocal
什么是ThreadLocal? 首先我们来看javadoc: This class provides thread-local variables. These variables differ from their normal counterparts in that each thread that accesses one (via its get or set method) has its own, independentl…...

python多线程为什么不能利用多核cpu
GIL 与 Python 线程的纠葛 GIL 是什么东西?它对我们的 python 程序会产生什么样的影响?我们先来看一个问题。运行下面这段 python 程序,CPU 占用率是多少? # 请勿在工作中模仿,危险:) def dead_loop():while True: p…...

2-【快乐学习c++】变量
变量 变量存在的意义:方便我们管理内存空间 变量创建的语法: 数据类型 变量名 变量初始值 int a 10变量取名规则: 标识符不能是关键字只能由字母、数字、下划线第一个字符必须是字母和下划线区分大小写 关键字 int char break for class extern … 常量 定义方式 1.#defi…...

rust不能放火堆_Rust 之不可为 (1) 暴露内部结构
之前的《学一点Rust又不会怀孕》系列好久没有更新啦,灰常抱歉(毫无诚意)。发现很多人在学习Rust期间会不约而同地尝试做一些事情,然后不约而同地做chongxie了le很hen久duobian,最后和最初的设想大相径庭。为什么呢?其实根本原因是…...

Java 设计模式-目的和设计原则
1、序言 软件设计模式(Design pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。 打个比方…...

ffmpeg+mencoder环境搭建和视频处理总结 - Wirlfly
导读: ffmpegmencoder几乎可以完成目前基于web的播客平台任何音视频处理的操作.如果还需要添加一些什么的话,那么就是视频在线录制功能了,这个也可以用ffmpegfms来完成,因此一般的类似于YouTube的一些可见功能都可以在ffmpegmencoderfms来做后台实现.由于fms没有实践…...

上传视频并转换为flv,抓取第一帧生面图片
---源码下载---- WEB.config配置节如下 <appSettings><!--工具文件夹--><add key"ffmpeg"value"ffmpeg/ffmpeg.exe"/><add key"mencoder"value"mencoder/mencoder.exe"/><add key"mplayer"value…...

java处理视频
目前绝大多数视频网站使用的格式是flv。格式可以任意位置播放,并且压缩效果也不错。 java的视频处理: 1. 上传视频。 2. 将上传的视频转换为flv格式,需要在后台开启进程进行处理。 视频转换工具:ffmpeg,mencoder ff…...

Ubuntu(Linux)下编译ffmpeg(svn版)和x264(git版)解编码器
转自:http://bbs.phpchina.com/viewthread.php?tid99963 ffmpeg是一款多媒体视频和音频文件解码和编码的工具,用来提供众多的多媒体(主要指视频和音频)文件的播放和转换支持。x264是一个编解码H264视频格式的库文件,相…...

ubuntu16.04 + ubuntu + apache2 配置apache解析php
给apache安装php扩展: sudo apt-get install libapache2-mod-php 注:这是apache解析php文件的关键,光修改配置文件不安装扩展是不起作用的。 目录位置:/etc/apache2/apache2.conf<Directory /home/menco/workplace># Rew…...
activiti 快速入门--传值取值(4)
比如说现在申请人需要往下一个审批人传一些值告诉他我是谁谁谁,然后审批人获取该值,那么可以这么做,具体操作如下: 1) 使用processEngine.getTaskService().setVariable(String taskId, String variableName, Obje…...

activiti 快速入门--3种assignee任务分配方式(2)
1. 第一篇文章写过,直接写死在流程图assignee里面,这种不灵活 2. 通过表达式来写${user} 3. 通过监听器 下面说说后面两种方式 1)通过表达式${user},当然这里可以随便起名,记得用的时候对应上就好了,…...
cas搭建sso单点登陆
多的话我就不说了,概念什么的自己百度,直接上操作步骤: 一:cas是基于https的所以我们需要的就是证书啦: 1.cmd窗口输入: keytool -genkey -alias ssodemo -keyalg RSA -keysize 1024 -keypass caiwenhao …...
activiti快速入门--简单请假例子(1)
1. 新建一个maven项目 2. pom.xml文件添加所需依赖: <dependencies><dependency><groupId>org.activiti</groupId><artifactId>activiti-engine</artifactId><version>5.21.0</version></dependency…...
springboot系列 | 与mybatis整合
springboot与mybatis整合及其简单,与传统SSM框架整合少了很多烦人的配置,springboot与mybatis整合只需导入mybatis包,这样springboot就会帮我们自动配置及整合了。下面直接上所需代码: 依赖包引入 整个pom.xml文件如下:…...

springboot系列 | 配置文件
可采用该网站https://start.spring.io/进行springboot项目创建 生成pom.xml文件内容: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/200…...
springboot系列 | 开启缓存(redis)
这篇基于redis在springboot中开启缓存处理 项目目录结构 依赖包引入 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xs…...
基于客户端(非proxy)实现数据库读写分离
之前写过一篇文章是基于atlas实现数据库读写分离(文章链接),还有一篇是主从同步(文章链接),atlas是一个proxy中间件,它的结构是在数据库与业务中间加了个中间件。 数据库读写分离有两种分类&am…...
SpringBoot 缓存之redis 篇
项目目录结构 依赖包引入 <?xml version"1.0" encoding"UTF-8"?><project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apac…...

【免费分享】全球海洋测深DEM(GEBCO)数据集
(本文首发于“水经注GIS”公号,订阅“水经注GIS”公号,为你分享更多GIS技术 )1、概述GEBCO(General Bathymetric Chart of the Oceans)全球 DEM数据集(Geo-Engineering Digital Savageÿ…...

【UIScrollView实现基本滚动 Objective-C语言】
一、我们先来说一下,上节课讲的是啥,都忘了上节课讲的是啥了吗, 1.上节课我们讲的是“猜图游戏”吧, 2.咱们第一天讲的是啥,讲的是怎么使用按钮吧,按钮一些基本控件,点击按钮,是不是高亮状态和普通状态,是不是切换图片吧,对吧 3.第二天学了什么,是不是图片浏览器…...

【ROS学习笔记17】ROS常用仿真组件URDF集成Gazebo
【ROS学习笔记17】ROS常用仿真组件URDF集成Gazebo 文章目录【ROS学习笔记17】ROS常用仿真组件URDF集成Gazebo前言1. URDF集成Gazebo1.1 URDF与Gazebo基本集成流程1.2 URDF集成Gazebo相关设置1.3 URDF集成Gazebo实操1.4 Gazebo仿真环境搭建2. URDF、Gazebo、Rviz综合应用2.1 机器…...

【vue2】vue2中的性能优化(持续更新中)
⭐ v-for 遍历避免同时使用 v-if ⭐ v-for 中的key绑定唯一的值 ⭐ v-show与v-if对性能的影响 ⭐ 妙用计算属性 ⭐ 使用防抖与节流控制发送频率 ⭐ 路由守卫处理请求避免重复发送请求 ⭐ 使用第三方UI库的引入方式 【前言】 该系列是博主在使用vue2开发项目中常用上的一…...

JavaEE-线程安全问题
1.线程安全的概念 如果多线程环境下代码运行的结果是符合我们预期的,即在单线程环境应该的结果,则说这个程序是线 程安全的. 为啥会出现线程安全问题? 本质原因: 线程在系统中的调度是无序的/随机的 (抢占式执行). 2.开始说明 先看个线程不安全的例子…...

服务端(一)安装 nvm 以及管理 node 版本
安装nvm地址 Releases coreybutler/nvm-windows GitHubA node.js version management utility for Windows. Ironically written in Go. - Releases coreybutler/nvm-windowshttps://github.com/coreybutler/nvm-windows/releases 直接下载安装,注意安装路径中…...

JDK源码系列:ThreadLocalMap到底是如何清理失效节点的?
在前面的关于ThreadLocal的文章中提到了所谓的内存泄漏问题,同时也提到了ThreadLocalMap在某些场景下会主动清理坏掉的Entry来释放内存,要理解它是怎么做到的,就必须理解它是怎么解决哈希冲突的,尤其是“真删除”Entry后如何保证不…...

C++11:改善程序性能
1 右值引用 1.1 右值引用的特性 C11中所有的值必属于左值、将亡值、纯右值三者之一。将亡值和纯右值都属于右值。区分表达式的左右值属性有一个简便方法:若可对表达式用&符取址,则为左值,否则为右值。 比如,简单的赋值语句: int i 0;…...

Spring入门篇3 --- 依赖注入(DI)方式、集合注入
目录1.依赖注入方式依赖注入(DI:dependence injection):在容器中建立bean与bean之间的依赖关系的整个过程。向一个bean中传递数据有三种方法:setter注入、构造器注入、自动装配/src/main/java/com/itheima/dao/BookDao.javapackage com.ithei…...

OB运维 | tenant--删除租户的流程设计
作者:姚嵩 不知道是地球人还是外星人,知道的可以留言告诉小编… 本文来源:原创投稿 *爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。 背景: ob中的租户相当于我们平常认知的…...

华为OD机试题,用 Java 解【乱序整数序列两数之和绝对值最小】问题 | 含解题说明
华为Od必看系列 华为OD机试 全流程解析+经验分享,题型分享,防作弊指南华为od机试,独家整理 已参加机试人员的实战技巧华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典本篇题目:乱序整数序列两数之和绝对值最小…...

刻意练习:数据结构复习思路
针对性的插入链接了解考试形式和试卷结构做到心中有数一、数据结构与算法(一) 数据结构的基本概念(二) 算法和算法分析1. 算法基本概念2. 算法的时间和空间性能分析二、线性表(一) 线性表的基本概念(二) 线性表的顺序存储结构和链式存储结构(三) 线性表的应用三、栈和队列(一) …...

Mybatis入门案例【超详细】
目录 前言 一、查询所有用户 1. 持久层添加查询所有方法 2. 在UserMapper.xml映射文件添加查询语句 3. 测试方法 4. 运行结果 二、MyBatis核心对象及工作流程 1. MyBatis核心对象 2. MyBatis工作流程 3. 使用SqlSession操作数据库 三、添加其他常见方法 1. Mybatis新…...

学习系统编程No.8【bash实现】
引言: 北京时间:2023/3/22/6:59,一晃3月都要过去了,时间真快,我都不知道自己这个月是怎么过的呢?怎么就要结束了,难受,恍惚自己还在2022年,刚刚晨跑回来,洗完…...

微服务注册中心做了什么事——服务发现
是否被一大堆的注册中心八股文淹没,不知道哪个是哪个,有啥区别甚至于不知道哪几个功能重叠互为替代,请看下文。 服务发现 服务发现如何做到持续维护服务地址在动态运维中的时效性 那在正式开始学习之前呢,让我们先来思考一个…...

Linux防火墙——SNAT、DNAT
目录 NAT 一、SNAT策略及作用 1、概述 SNAT应用环境 SNAT原理 SNAT转换前提条件 1、临时打开 2、永久打开 3、SNAT转换1:固定的公网IP地址 4、SNAT转换2:非固定的公网IP地址(共享动态IP地址) 二、SNAT实验 配置web服务…...

React篇-关于React的简简单单了解~
一.简介1.介绍用于构建用户界面的 JavaScript 库2.创建项目(1)手动创建<head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-width,…...

机器学习领域中各学派划分(符号主义、频率主义、贝叶斯主义、连接主义)
前言 如果你对这篇文章感兴趣,可以点击「【访客必读 - 指引页】一文囊括主页内所有高质量博客」,查看完整博客分类与对应链接。 在机器学习领域中,算法数量可谓是数不胜数,若只关注每个算法本身,将各个算法独立地进行…...

独特视角解读JVM内存模型
独特视角解读JVM内存模型类加载器类加载器体系结构的作用防止恶意代码去干涉善意的代码守护了被信任的类库的边界双亲委派模型运行时包JVM内存模型类装载过程ClassLoader类中的核心方法和注意事项方法区从Main方法的执行探究一次类加载的完整过程堆方法表对象锁数组对象程序计数…...

C++ swtich case用法
参考:https://www.dovov.com/switch.html 这是我想要做的: switch(myvar) { case: 2 or 5: … break; case: 7 or 12: … break; … } 我尝试了“情况:2 || 5”,但没有奏效。 目的是不要为不同的值编写相同的代码。 通过堆叠每个开关盒&a…...

Redis为什么选择单线程?Redis为什么这么快?
目录专栏导读一、Redis版本迭代二、Redis4.0之前为什么一直采用单线程?三、Redis6.0引入多线程四、Redis主线程和IO线程是如何完成请求的?1、服务端和客户端建立socket连接2、IO线程读取并解析请求3、主线程执行请求命令4、IO线程会写回socket和主线程清…...

基于spring cloud 的连接不同数据库的查询案例(手把手配置详解)
前言: 本文非常详细,主要讲解实际开发的代码部分,同时每个步骤都有标签,不用担心内容过长,内附详细代码。以及中途各种问题的解决方案。 springcloud案例介绍: 订单微服务能够查询订单信息,订…...

【CMake入门教程】CMake目录导航
CMake教程专栏文章列表 【手册篇】CMake帮助手册的使用【手册篇】CMake编译平台介绍 【实例篇】01.第一个程序【实例篇】02.包含头文件实例【实例篇】03.创建静态库【实例篇】04.创建一个共享库【实例篇】05.安装程序【实例篇】06.编译类型(Debug/Release/MinSizeRel/RelWithD…...

mysql查询数据库版本
方法一:select version(); 或者 select version() from dual执行结果:version : 5.7.31注意:1、sql语句一般部不分大小写2、dual解释见小结方法二mysql - version 或者 mysql - status执行的结果:第一行:mysql Ver 14.14 Distrib 5.7.31, for…...

【并发编程】线程的基本原理和Thread Dump线程分析
线程的基本原理和Thread Dump线程分析线程的基本原理线程的运行状态如何中断线程存在循环的线程中断处于阻塞状态的线程中断Thread Dump线程分析CPU不高,但响应很慢CPU很高,且响应很慢线程的基本原理 放一张线程的原理图: java代码创建线程后࿰…...

阿里妈妈智能诊断工程能力建设
丨本文作者:茂道、羲洋、君之、天柏1. 业务背景算法同学在日常工作中经常要面临一些耗时较多的临时工单,这类工单的问题类型五花八门,背后对应的原因也各不相同,例如广告主操作类问题、大盘流量波动问题、海选问题、粗排问题等。这…...

openresty 安装与使用
一、openresty的安装下载源码openresty download安装依赖apt-get install libpcre3-dev \libssl-dev perl make build-essential curl编译tar -xzvf openresty-VERSION.tar.gz# --without-http_redis2_module 将不能使用http_redis2模块./configure --prefix/usr/local/openres…...

DxO PureRAW 3 - RAW 格式照片自动降噪锐化光学校正
使用 DxO PureRAW,无需升级相机即可获取更清晰、更纯净的 RAW 文件,能够高效去除图像的噪点,并可对镜头光学方面的缺陷进行校正。官网:https://www.dxo.com/zh-cn/dxo-pureraw/DxO PureRaw 3 最大的亮点在于其加入了 DxO 最新的人…...

【数据库学习】Postgres原理及底层实现
1,事务原理 事务(transaction): 是用户定义的一组数据库操作,要么全做要么全不做,失败即回滚。 事务是恢复和并发控制的基本单元。 保存点(savePoint) 在一个大的事务中,…...

工程管理系统软件 自主研发,工程行业适用
ava版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下: 首页 工作台:待办工作、消息通知、预警信息,点击可进入相应的列表 项目进度图表:选择(总体或单个)项目显示1…...

Java开发 | 内部类 | 静态内部类 | 非静态内部类 | 匿名内部类
目录 1.内部类 1.1内部类的简单创建 1.2内部类的分类 1.2.1普通内部类 1.2.2静态内部类 1.3匿名内部类 1.4局部内部类 1.内部类 内部类就是一是一个类里面装着另外一个类,就像俄罗斯套娃一样。最外层的类我们叫外部类,内层的类我们叫内部类。 1…...

【C语言】栈区与堆区
目录分配管理方式申请大小限制不同申请效率不同总结:栈区、堆区 是内存模型 对比起来看 分配管理方式 栈区由编译器自动管理, 函数运行时分配,函数结束时释放。存放为运行函数而分配的局部变量(函数结束时,其内临时…...

交通信号标志识别软件(Python+YOLOv5深度学习模型+清新界面)
摘要:交通信号标志识别软件用于交通信号标志的检测和识别,利用机器视觉和深度学习智能识别交通标志并可视化记录,以辅助无人驾驶等。本文详细介绍交通信号标志识别软件,在介绍算法原理的同时,给出Python的实现代码以及…...

js——async和defer
同步加载——不添加async或defer 代码1(后面所有对代码的改动,都参照代码1) <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" co…...

JAVA多线程知识整理
Java多线程基础 线程的创建和启动 继承Thread类来创建并启动 自定义Thread类的子类,并重写该类的run()方法,该run()方法实际上就是线程执行体,代表了线程需要完成的任务。创建该子类的实例,即创建线程对象。调用线程对象的star…...

Kaggle 赛题解析 | AMP 帕金森进展预测
文章目录一、前言二、比赛说明1. Evaluation2. Timeline3. Prize4. Code Requirements三、数据说明四、总结🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 一、前言 竞赛题目:AMP-Parkinson’s Disease Progression Prediction 竞赛地址…...

Shell变量和引用
变量的定义本质上讲,变量就是在程序中保存用户数据的一块内存空间,而变量名就是这块内存空间的地址在程序的执行过程中,保存数据的内存空间的内容可能会不断地发生变化,但是,代表内存地址的变量名却保持不变变量的命名…...

腾讯云轻量应用服务器和CVM云服务器比为什么这么便宜?
最近需要一台服务器,发现腾讯云轻量应用服务器很便宜,为什么这么便宜?腾讯云轻量应用服务器和CVM云服务器比为什么这么便宜?轻量服务器公网带宽起步很高,4M起,感觉配置很高呀,难道性能不行么&am…...

C语言枚举—事件提醒程序 (time函数)
编写程序,实现一个事件提醒程序,如果今天是周几,完成什么事情… 这里需要用time函数获取当前时间,或者会用到localtime()函数 (1) time的原型是: #include <time.h>time_t time( time_t *time );功能࿱…...

小程序二:不支持打开非业务域名https://xxx.xx.com
原因:由于在小程序项目中,源H5网页代码里通过 <web-view> 嵌入或引用了https://xxx.xx.com域名,导致审核失败,因为:微信公众平台如果是开通的个人账号,那他不支持打开因为:需要已经认证的企业号和服务…...

PyTorch机器学习与深度学习技术方法与案例实践应用
PyTorchPyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序。2017年1月,由Facebook人工智能研究院(FAIR)基于Torch推出了PyTorch。它是一个基于Python的可续计算包,提供两个高级功…...

Go项目(幂等性)
文章目录简介服务雪崩幂等性unique indextoken锁小结简介 前一篇为了避免因消息的重复发送导致一个订单的库存归还多次,我们新建了一张表 StockSellDetail其实这里涉及到幂等性,但在此之前,先来了解一些微服务中的常见问题 注:微…...

Python-模块和包
1.模块 概念 在Python中,模块是一种组织Python代码的方式。一个模块(py文件)可以包含多个函数、类、变量等Python对象,可以被其他Python程序导入和使用。Python标准库中包含了很多有用的模块,如math、random、os等。此外,Python还…...

Spring 远程加载配置
本文以携程的Apollo和阿里的Nacos为例。 pom中引入一下依赖: <dependency><groupId>com.ctrip.framework.apollo</groupId><artifactId>apollo-client</artifactId><version>2.0.1</version></dependency><depe…...

3月第3周榜单丨飞瓜数据B站UP主排行榜(哔哩哔哩平台)发布!
飞瓜轻数发布2023年3月13日-3月19日飞瓜数据UP主排行榜(B站平台),通过充电数、涨粉数、成长指数三个维度来体现UP主账号成长的情况,为用户提供B站号综合价值的数据参考,根据UP主成长情况用户能够快速找到运营能力强的B…...

dbms_application_info
今天在查看的时候发现,原有的存储过程中添加了很多dbms_application_info函数的调用,不知道是干什么的,查了下相关资料: dbms_application_info提供了通过v$session跟踪脚本运行情况的能力,该包允许我们在v$session设…...

网络同步——帧同步和状态同步解析
目录 概述 帧同步概念 状态同步概念 对比 概述 同步就是要多个客户端表现效果是一致的,而且对于大多数的游戏,不仅仅要表现一致,还要客户端和服务器的数据也是一致的。所以同步是个网络游戏概念,只有网络游戏才需要同步&…...

The FLARE challenge中的DG Tricks
在数据预处理过程中,大多数顶级团队将强度值裁剪到特定范围内,然后以单位标准差(表6预处理CI & N)将其归一化为[ 0 , 1]或零均值,从而减小了不同个例和中心之间的强度方差。重采样被顶级球队广泛使用,但采样策略各不相同。一些…...

docker-compose 搭建RocketMQ 5.1.0 集群(双主双从模式) | Spring Cloud 28
一、前言 关于更多RocketMQ的介绍请见官网:https://rocketmq.apache.org/zh/docs/ 网上关于Docker搭建RocketMQ单机&集群的版本一般都是4.X。关于最新的5.X版本,官方给出的示例都是基于物理机&虚拟机实现,不便于我们我们日常开发使…...

论文解读:ChangeFormer | A TRANSFORMER-BASED SIAMESE NETWORK FOR CHANGE DETECTION
论文地址:https://arxiv.org/pdf/2201.01293.pdf 项目代码:https://github.com/wgcban/ChangeFormer 发表时间:2022 本文提出了一种基于transformer的siamese网络架构(ChangeFormer),用于一对共配准遥感图…...

工程师你知道PCB的蛇形走线咋搞吗?
提起蛇形线,很多PCB工程师都不会陌生,蛇形线是PCB布线环节时经常用到的一种走线方式,主要目的是为了调节延时、满足系统时序设计要求,然而很多工程师经常经常滥用蛇形线,导致信号质量降低,板子整体上没那么…...

Vue入门+DRF项目实战-01-引入REST Framework
1. 引入Django REST framework 在本章中,我们要大家介绍为什么学习Django REST framework,它能帮助我们做哪些事情。 课程思路: 我们从分析现在流行的前后端分离Web应用模式说起,然后介绍如何设计REST API,通过使用Django来实 现一个REST API为例,明确后端开发REST API要做…...

Matter名词解释
Access Control List:访问控制列表,类似一个白名单,可以用来方控制访问簇元素Administrator:管理员,对另一个节点的访问控制列表具有管理权限的节点Advertising Data:广播包数据,主要指的是通过…...

ROS安装官方教程,以及如何解决安装过程中的报错
本文参考ROS官方教程:http://wiki.ros.org/melodic/Installation/Ubuntu 安装 ros melodic,并解决了安装过程中出现的报错 我们正在为以下几个Ubuntu平台构建Debian软件包。这些软件包比基于源代码的构建更高效,也是我们推荐在Ubuntu上使用的…...

【LeetCode】剑指 Offer 33. 二叉搜索树的后序遍历序列 p179 -- Java Version
题目链接:https://leetcode.cn/problems/er-cha-sou-suo-shu-de-hou-xu-bian-li-xu-lie-lcof/ 1. 题目介绍(33. 二叉搜索树的后序遍历序列) 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回 true&am…...

回溯算法(排列/组合/子集)
排列 无重复元素全排列 题目链接: 全排列https://leetcode.cn/problems/permutations/ 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 示例: 输入:nums [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,…...

安卓逆向高阶之frida hook java层
文章目录1. 初次hook Java 层函数2. hook 修改函数返回值3. hook调用静态函数和非静态函数4. hook设置成员变量5. hook内部类6. hook 动态加载dex7. 枚举class1. 初次hook Java 层函数 登录走else if 逻辑,hook a 方法 function hook_java() {Java.perform(functio…...

unity的C#学习——浮点常量、字符常量和字符串常量
浮点常量 在C#中,一个浮点常量是由整数部分、小数点、小数部分和指数部分组成。浮点常量可以使用以下几种表示形式(大写与小写效果等价): 十进制表示法:使用小数点来表示浮点数(默认为double类型ÿ…...

同样是软件测试岗位,年薪只比我大5岁,凭什么他能年薪50W?
相信大家听过网上流传的一句话: 35岁前当经理,35岁后开滴滴。 疫情当下,各大互联网都在想办法“活下去”,各种花样裁员也已经不足为奇,很多软件测试工程师就开始焦虑这个问题:在这个行业真的干到35岁就干…...

NPDP|来聊聊To B产品经理都应该具备的9个边界能力
面对市场的时候,给予To B产品经理的反馈却是繁杂且滞后的,很多无效的反馈,将直接干扰、甚至破坏产品的发展决策。 这时,To B产品经理的“边界能力”就会显得非常重要。"边界能力”简单说,就是什么该做?…...