next

在windows上用eclipse搭建STM32开发环境

你。 提交于 2020-11-18 08:29:03
1.下载eclipse需要的运行环境,JDK/JRE. 在http://wiki.eclipse.org/Eclipse/Installation中,找到最新的eclipse版本需要的JAVA 版本,然后去相应网站下载JAVA。这里我用的是Eclipse 4.5(Mars),它需要JAVA 7。 2.下载eclipse 在eclipse的官网下载 Eclipse IDE for C/C++ Developers 3.下载bleeding-edge-toolchain,openOCD,windows-build-tool。 在网站http://www.freddiechopin.info/en/download,找到download,选择bleeding-edge-toolchain,下载最新的即可。 之后接着点击download,下载OpenOCD,同样下载最新的。 这个网站上提供的windows-build-tool版本太老,无法使用,建议到http://gnuarmeclipse.github.io/windows-build-tools/下载最新的windows-build-tools。 4.下载eclipse GNU ARM plug-in 在https://sourceforge.net/projects/gnuarmeclipse/上下载最新的即可。 5.下载Zadig

Netty 线程模型与Reactor 模式

微笑、不失礼 提交于 2020-11-18 05:21:49
前言 Netty 的线程模型是基于NIO的Selector 构建的,使用了异步驱动的Reactor 模式来构建的线程模型,可以很好的支持成百上千的 SocketChannel 连接。由于 READ/WRITE 都是非阻塞的,可以充分提升I/O线程的运行效率 ,避免了IO阻塞导致线程挂起, 同时可以让一个线程支持对多个客户端的连接SocketChannel的 READ/WRITE 操作, 从根本上解决了传统阻塞IO的一线程处理一连接的弊端。 高效率的Reactor模式 Reactor 模式 是一种为处理服务请求并发,提交到一个或者多个服务处理程序的事件设计模式。当请求抵达后,服务处理程序使用解多路分配策略,然后同步地派发这些请求至相关的请求处理程序 (来自维基百科: https://zh.wikipedia.org/wiki/反应器模式 ) 常见的reactor模式有以下三种 单线程reactor 多线程reactor 主从reactor 1、单线程reactor ractor 单线程模式是指所有的I/O操作都在一个NIO线程完成,该线程的职责: 1.作为NIO服务端,接收客户端TCP连接 2.作为NIO客户端,向客户端发送TCP连接 3.READ/WRITE 客户端的请求 不过单线程的reactor 模式无法发挥多核的优势,因此对于高并发量的系统仍然存在瓶颈,主要原因如下: 1

数据结构--数组模拟环形队列

六月ゝ 毕业季﹏ 提交于 2020-11-17 14:36:34
import java.util.Scanner; /** * 数组实现环形队列 */ public class CircleArrayQueue2 { public static void main(String[] args) { System.out.println("测试数组模拟环形队列的案例~~~"); // 创建一个环形队列 CircleArray2 queue = new CircleArray2(4); //说明设置4 char key = ' '; // 接收用户输入 Scanner scanner = new Scanner(System.in);// boolean loop = true; // 输出一个菜单 while (loop) { System.out.println("s(show): 显示队列"); System.out.println("e(exit): 退出程序"); System.out.println("a(add): 添加数据到队列"); System.out.println("g(get): 从队列取出数据"); System.out.println("h(head): 查看队列头的数据"); key = scanner.next().charAt(0);// 接收一个字符 switch (key) { case 's': queue

Spring Boot Sample 014之spring-boot-error-controller

蹲街弑〆低调 提交于 2020-11-17 07:01:34
一、环境 Idea 2020.1 JDK 1.8 maven 二、目的 spring boot 异常处理controller实现方式。 gitHub地址: https://github.com/ouyushan/ouyushan-spring-boot-samples 三、步骤 3.1、点击File -> New Project -> Spring Initializer,点击next 3.2、选择Web依赖,选中Spring Web。可以选择Spring Boot版本,本次默认为2.2.6,点击Next 3.3、项目结构 四、添加文件 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/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework

C语言 严蔚敏数据结构 线性表之链表实现

|▌冷眼眸甩不掉的悲伤 提交于 2020-11-17 06:52:31
  博主最近在考成都大学皇家计算机科学与技术专业,复习专业课数据结构,正好学习到线性结构中的线性表用链表这种存储结构来实现。   首先,数据结构包括1、数据的操作2、逻辑结构3、存储结构(数据结构三要素。   直接上代码,现阶段代码实现功能有:链表初始化、遍历、增、删、返回链表长度,后续功能陆续发布。其中肯定有很多问题,希望各位码哥留言。 Linklist* InitList( int i) // i为链表大小 { Linklist * head; head = (Linklist*) malloc ( sizeof (Linklist)); Linklist *end= head; int j = 0 ; for (j = 0 ;j < i;j++ ) { Linklist *node = (Linklist*) malloc ( sizeof (Linklist)); scanf( " %d " , &node-> data); end ->next = node; end = node; } end ->next = NULL; return head; } int GetLenLinklist(Linklist *head) // 获取带头结点链表长度 { int length; Linklist * p; p = head; for (length = 0 ;p-

bat 命令 常用配置及其用法

我的未来我决定 提交于 2020-11-17 05:56:41
1.初衷: bat 批处理文件:当我懒得一个个操作的时候,可以把若干东西放到一个文件里面,开机运行或者需要的时候手动运行、节省时间。 2.命令集说明 2.1 常用命令 2.1.0 help 命令 /? help 命令 type /? >>tmp.txt (把 type 命令的帮助信息写入到tmp.txt文件里) 2.1.1 @ ( 仅影响当前行, 相对于echo off 来说,是遮住了一行,而不是挡住了一片 ) 不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。 eg 关闭回显(之后的指令不再显示,只输出执行结果):@echo off 2.1.2 echo 打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。 echo 显示当前回显设置 echo on 打开回显,即显示指令输入及其输出结果 echo off 隐藏后面的所有指令及其输出结果( 在遇到 echo on 之前 ) echo 'hello' 单纯输出字符串 2.1.3 rem (可用::,: 代替rem, :Here is the description , ::Here is the description) rem 注释命令 : @Rem Here is the description 2.1.4 pause pause 暂停

Python爬虫教程,爬取B站小视频!

点点圈 提交于 2020-11-17 04:49:34
大数据时代 让爬虫爬取我们所需 Python爬虫教程,爬取B站小视频! 今天我们一起爬取下b站的小视频,其实呢,测试过程中需要用到视频文件,找了几个网站下载,都需要会员什么的,直接写一篇爬虫爬取视频~~~ 分析b站小视频 1、进入到抓取链接地址 http://vc.bilibili.com/p/eden/rank#/?tab=%E5%85%A8%E9%83%A8 2、分析抓取链接内容 通过F12或者抓包工具进行查看我们需要爬取的视频在哪里存放,页面以ajax动态加载的 3、分析请求内容和请求参数 通过查看请求内容得到这些数据 1、请求的接口地址 2、请求方式为get 3、请求参数为 page_size 显示的个数 next_offset 动态跳转页面 tag  搜索标题 platfrom (应该是pc端) 分析了页面内容,那么动手来写代码,爬取视频下来 爬取b站小视频 开始写代码之前呢,我们也要一步一步的来,分清楚每一步都是干什么用的,这样的话才能让我们写的代码更加清除。 1、构建请求信息,请求需要爬取的地址 # 构建请求信息,获取数据信息 def get_json (url,ajax) : # 构建请求信息 params = { 'page_size' : 10 , 'next_offset' : ajax, 'tag' : '今日热门' , 'platform' : 'pc'

SpringBoot+MybatisPlus+Mysql+JSP

烂漫一生 提交于 2020-11-17 03:43:58
放个效果图: 准备项目 首先在MySql控制台输入一下sql语句创建student 数据库和student。 create databse student ; use student ; CREATE TABLE ` student ` ( ` stu_id ` bigint ( 20 ) NOT NULL , ` stu_name ` varchar ( 45 ) DEFAULT NULL , ` stu_sex ` varchar ( 6 ) DEFAULT NULL , ` date ` varchar ( 45 ) DEFAULT NULL , ` room ` int ( 2 ) DEFAULT NULL , ` acadimy ` varchar ( 45 ) DEFAULT NULL , PRIMARY KEY ( ` stu_id ` ) ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ; SpringBoot 修改项目名称,点击next 这里直接点next 第一次打开会很慢 打开后删除用不到的文件 连接MySql 修改 application.properties 为 application.yml 插入一下代码 要修改的内容: url: jdbc:mysql:/

语义分割中单类别和多类别图片数据标注,以及灰度类别转换

穿精又带淫゛_ 提交于 2020-11-17 03:42:47
精、点击上方 “ 码农的后花园 ”, 选择 “ 星标 ” 公众号 精选文章,第一时间送达 上期讲解了语义分割模型的基本架构和常用数据集,这期就讲解一下语义分割数据集的制作,追下去吧~ 制作总体步骤: 1. 使用lableme对图片数据进行标注,生成对应图片的x.json文件。 2. 执行lableme下的内置函数labelme_json_to_dataset,依次 手动 生成图片对应的x_json文件(或者使用代码一次性处理生成)。 3. 对第二步生成文件夹中的文件进行处理,生成语义图片label.png。 4. 将语义图片转换为类别灰度图图片-最终训练标签文件。 一、文件目录结构: 二、正式开始制作 第一步:标注软件的安装 1.Anaconda Prompt中创建一个环境 conda create --name=labelImg python=3.6 2.激活进入刚建立的新环境, conda activate labelImg 3.安装界面支持pyqt5包 pip install pyqt5 -i https://pypi.douban.com/simple/ 4.下载安装labelme pip install labelme -i https://pypi.douban.com/simple/ 5.输入命令labelme,就可以启动程序进行数据标注 第二步:进行标注 A