自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 收藏
  • 关注

原创 java高级部分之多线程内容学习 线程的通信 线程的创建方法三四

想让这三个窗口轮流卖票怎么做?引入线程通信方法!!!线程通信的例子:使用两个线程打印 1-100。线程1, 线程2 交替打印涉及到的三个方法:wait():一旦执行此方法,当前线程就进入阻塞状态,并释放同步监视器。notify():一旦执行此方法,就会唤醒被wait的一个线程。如果有多个线程被wait,就唤醒优先级高的那个。notifyAll():一旦执行此方法,就会唤醒所有被wait的线程。说明:1.wait(),notify(),notifyAll()三个方法必须使用在同步代码块或

2021-07-09 00:05:48 113

原创 java高级部分之多线程内容学习2 同步机制解决线程安全问题 死锁

在上篇博客中我们发现了错票,重票的问题,这问题交线程安全问题,引入同步机制处理!例子:创建三个窗口卖票,总票数为100张.使用实现Runnable接口的方式1.问题:卖票过程中,出现了重票、错票 -->出现了线程的安全问题2.问题出现的原因:当某个线程操作车票的过程中,尚未操作完成时,其他线程参与进来,也操作车票。3.如何解决:当一个线程a在操作ticket的时候,其他线程不能参与进来。直到线程a操作完ticket时,其他线程才可以开始操作ticket。这种情况即使线程a出现了阻塞,也不

2021-07-08 23:50:47 171 3

原创 java高级部分之多线程内容学习1

我们带着目标来学习多线程,最终目的是学完这部分能用多线程的知识做出一个多窗口的卖票小系统。如何创建多线程?多线程的创建有四种方式。方式一多线程的创建,方式一:继承于Thread类创建一个继承于Thread类的子类重写Thread类的run() --> 将此线程执行的操作声明在run()中创建Thread类的子类的对象通过此对象调用start()例子:遍历100以内的所有的偶数class MyThread extends Thread {

2021-07-08 22:29:34 128 2

原创 排序的几种算法

选择排序SelectionSortpackage jianglongjie;/* * 每次找到最小的和最前交换 * 循环length次 * * 时间 o n平方 * * 想办法优化下: 遍历一次 还可以找出最大值 */public class SelectionSort { public static void sort(int[] args) { int [] arr= {5,3,6,8,1,7,9,4,2}; for(int i=0; i<arr.leng

2021-06-27 01:03:12 74

原创 2021-06-17计算机网络简单笔记

物理层(Physical Layer):传输各种设备上传输的比特流,确定传输介质的接口标准 单位是比特流数据链路层(Data Link Layer):数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。三个主要功能:封装成帧,透明传输,差错检测。 单位是帧。网络层(Network Lay

2021-06-19 23:40:13 55 2

原创 2021-06-14 类 this static关键字 数据域封装

类是对象的模板。它定义对象的属性,并提供用于以创建对象的构造方法以及操作对象的普通方法。对 象 和 类 3052.类也是一种数据类型。可以用它声明对象引用变量。对象引用变童中似乎存放了一个对象,但事实上,它包含的只是对该对象的引用。严格地讲,对象引用变量和对象是不同的,但是大多数情况下,它们的区别是可以忽略的。3.对象是类的实例。可以使用 new 操作符创建对象,使用点搡作符( .)通过对象的引用变量来访问该对象的成员。4.实例变量或方法属于类的一个实例。它的使用与各自的实例相关联。静态变量.

2021-06-14 16:20:46 152

原创 2021-06-14 Java的输入类scanner

import java.util.Scanner;Scanner input = new Scanner(System.in)a = input.nextInt();同理nextdouble等 有点像scanf的占位符 %dpackage shuailongjie;import java.util.Scanner;public class demo1 { public static void main(String[] args) { //scanf 输入 Scanner

2021-06-14 16:00:27 1106 1

原创 java数组知识点

java数组和c基本一样,稍微区别public class demo4 { public static void main(String[] args) { int a[] = {1,2,3}; System.out.println(a[0]); System.out.println(a[1]); System.out.println(a[2]); // int array[] = new int [3]; right int array[] =

2021-05-17 14:19:43 60

原创 树莓派实现人脸识别

本次使用的人脸识别平台为翔云平台购买连接为:https://www.netocr.com/order/price.html一、安装openssl库1.1、下载openssl源码//https://www.openssl.org/source///https://ftp.openssl.org/source/old/1.1.1wget https://ftp.openssl.org/source/old/1.1.1/openssl-1.1.1i.tar.gz1.2、解压、配置、编译并安装

2021-05-13 18:47:33 845

原创 实现使用编程访问百度

配置环境export LD_LIBRARY_PATH=./curl-7.71.1/_install/lib/编译时带上库链接 和头文件gcc demo2.c -I ./curl-7.71.1/_install/include/ -L ./curl-7.71.1/_install/lib/ -lcurl运行完返回 /tmp/get.html 查看我们编程实现的返回百度的html#include <stdio.h>#include <curl/curl.h>#defi

2021-05-11 19:52:01 167

原创 树莓派 继电器开关灯

开灯#include <stdio.h>#include <wiringPi.h>int main(){ wiringPiSetup(); //初始化硬件 pinMode(21,OUTPUT); //初始化引脚为输出口 pinMode(22,OUTPUT); //初始化引脚为输出口 pinMode(23,OUTPUT); //初始化引脚为输出口 pinMode(24,OUTPUT.

2021-05-05 14:23:18 102

原创 树莓派3B + Pi摄像头+mjpg-streamer

https://jingyan.baidu.com/article/47a29f2474a555c01523994c.html此文章写的很不错!有具体软件安装步骤等硬件安装步骤1、把黑色卡扣扣起来2、蓝色部分像内 如图, 插入

2021-05-05 14:14:28 68

原创 树莓派串口编程

树莓派串口编程1.想要使用树莓派串口编程,首先要先配置串口文件,保证串口不被占用cd /boot/sudo vim cmdline.txt删除【】之间的部分dwc_otg.lpm_enable=0 【console=ttyAMA0,115200】 kgdboc=ttyAMA0,115200 =tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait使用时要包含头文件使用时需要包含头文件:#i

2021-05-02 18:10:24 253

原创 c语言结构体新玩法

今天介绍一种结构体赋值的新方法,适用于你想赋值部分成员时的情况通常情况下 struct animal dog = {“dog”,1,1,1}; struct Animal person={ .peat = personEat, .pbeat = personBeat, };dem代码展示#include <stdio.h>struct Animal{ char name[128]; int age; int sex; void (*peat)();

2021-05-01 15:09:06 51

原创 树莓派gpio接口

可在树莓派中直接输入 gpio read all 查看 但是对应方向不好确定,使用时认准usb口对准自己

2021-05-01 11:32:25 323

转载 树莓派外设

树莓派外设开发编程树莓派外设开发接口文档参考WiringPi库(Linux动态库:so 静态库:.a)API printf(c标准库)https://www.cnblogs.com/lulipro/p/5。992172.html1.树莓派的接口: 驱动IO口:input output 对主控来说Input:人体,烟雾,火焰,震动等Output:继电器,蜂鸣器PWM:电机调速,灯光调明亮度语音识别模块,液晶屏串口uartIICSPIIIS其他特定硬件的接口:flash

2021-05-01 11:29:02 108

转载 树莓派交叉编译

交叉编译是什么,为什么要交叉编译是什么?=交叉编译 是在一个平台上生成另一个平台上的可执行代码。我们再windows上面编写C51代码,并编译成可执行代码,如xx.hex,是在c51上面运行,不是在windows上面运行 我们在ubuntu上面编写树莓派的代码,并编译成可执行代码,如a.out, 是在树莓派上面运行,不是在ubuntu linux上面运行 编译:是在一个平台上生成在该平台上的可执行代码 C51 交叉编译的发生在keil(集成环境上面) stm32 =为什..

2021-05-01 11:27:45 101

转载 树莓派二次系统开发

树莓派高阶开发课程ubuntu18.04版本安装让程序猿搭建环境太搞笑了,轻松easy!=======================================================================================================================树莓派等芯片带操作系统的启动过程 C51,STM32(裸机)》》》》》》C直接操控底层寄存器实现相关业务。 业务流程型的裸机代码 遥控灯: while(1

2021-05-01 11:26:38 231

原创 2021/4/20数据库课内作业实验

在这里插入代码片

2021-04-21 21:56:42 158

转载 树莓派开发日记之linux库概念及相关编程

Linux库概念及相关编程(面试重点)1.分文件编程案例好处:分模块的编程思想网络 a超声波b电机ca.功能责任划分b.方便调试c.主程序简洁2.库https://www.cnblogs.com/sunsky303/p/7731911.htmlhttps://blog.csdn.net/wk_bjut_edu_cn/article/details/81735956a)静态库静态函数库,是在程序执行前(编译)就加入到目标程序中去了 ;优点: 运行快发布程序无需提供静态库,因为

2021-04-21 15:11:16 96

转载 树莓派开发日记之基础配置

树莓派开发文档笔记—基础配置1.树莓派刷机2.树莓派登录2.1HDMI视频线 连接到显示器2.2串口2.2.1设备破解默认情况,树莓派的串口和蓝牙连接。想办法断开蓝牙连接,把串口用来数据通信https://blog.csdn.net/syjsxxjy/article/details/80774262a.观看树莓派的启动过程,字符b.串口登录树莓派2.2.2 默认账号:pi 默认密码:raspberry2.3通过网络登录树莓派2.3.1让树莓派入网修改https:/

2021-04-16 19:11:11 70

原创 2021-04-15php基础 定义 变量等

PHP基础PHP语法初步PHP是一种运行在服务器端的脚本语言,可以嵌入到HTML中。PHP代码标记在PHP历史发展中,可以使用多种标记来区分PHP脚本ASP标记:<% php代码 %>短标记:<? Php代码 ?>,以上两种基本弃用,如果要使用那么需要在配置文件中开启脚本标记:<script language=”php”>php代码</script>PHP注释习惯:所有的代码在写的过程中都必须进行注释,对于初学者而言,注释就是个人学习和写

2021-04-15 11:28:35 189

原创 java 数据类型 选择控制流程 循环控制知识点

java的基本数据类型和c语言基本一样public class demo1 { public static void main(String[] args) { System.out.println("jianglongjiehenshuai"); int a; a = 10; int b; b = 20; System.out.println("a = "+a); System.out.println("b = "+b); int c =a+b;

2021-04-12 23:00:14 44

转载 java 知识点1 java EE SE ME 等概念

Java SE(Java Platform,Standard Edition),应该先说这个,因为这个是标准版本。Java EE (Java Platform,Enterprise Edition),java 的企业版本Java ME(Java Platform,Micro Edition),java的微型版本。JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具

2021-04-12 22:44:45 78

原创 字符串日常小demo

需求 保存一个未被更改前的command 到tmp 在改后把tmp的内容赋值给command学习内容 : 指针相关的内存 指向, 是不是野指针,是不是指向command,有没有malloc?#include<string.h>#include<stdio.h>#include<stdlib.h>char *getfile(char *str){ char *tmp = str; char *p; p = strtok(tm

2021-04-12 22:08:41 51

原创 linux系统编程总结题之ftp服务器的实现

基本思路,在socket编程的框架上,加入对命令的处理之后进行文件的读取,创建,程序调用等;问题1:如何处理指令?写一个函数调用字符串 相等,分割等方法。再返回相对应值给switch进行不同指令的处理。问题2:如何保存命令行处理结果?采用结构体,将指令存在msg.command内,处理结果保存在msg.data内。在调用open read 等 将读取到的文件存放 到data中。遇到的问题1.终止的指令应该要用Ctrl C 不能用Ctrl Z 不然端口会费掉2.要对msg结构体memset

2021-04-11 23:43:42 248

原创 gtk中button触发信号小知识

光有图案没有作用,我们需要这个按钮在我们按下时,进行一定的动作前面我们学习的GTK界面都是静态的,我们按下按钮它是没有响应的,如何让它有响应呢?接下来我们一起学习GTK的信号与回调函数。GTK采用了信号与回调函数来处理窗口外部传来的事件、消息或信号。当信号发生时,程序自动调用为信号连接的回调函数。学习应用编程,我们会经常接触到“信号”这个名词。GTK中的“信号”实际上是一种软件中断。“中断”在我们生活中经常遇到,譬如,我正在房间里打游戏,突然送快递的来了,把正在玩游戏的我给“中断”了,我去签收快递(

2021-04-11 16:01:14 408

原创 linux中socket编程

server的编程分为6个部分1.socket2.bind3.listen4.accept5.read6.writesocketsocket返回的值是一个文件描述符,SOCKET类型本身也是定义为int的 #include <sys/types.h> /* See NOTES */ #include <sys/socket.h> int socket(int domain, int type, int

2021-04-03 22:29:12 164

原创 linux中pthread编程学习

线程创建等待及退出#include<stdio.h>#include<pthread.h> // int pthread_create(pthread_t *thread, const pthread_attr_t *attr,// void *(*start_routine) (void *), void *arg);void * func1(void *arg){ static ch

2021-03-31 01:42:02 235

原创 信号量部分内容学习

信号量部分内容#include <sys/types.h>#include <sys/ipc.h>#include <sys/sem.h>#include<stdio.h>// int semget(key_t key, int nsems, int semflg);// int semctl(int semid, int semnum, int cmd, ...);union semun{ int

2021-03-30 14:46:57 76

原创 linux中信号操作

优秀文章学习连接https://www.jianshu.com/p/f445bfeea40a#include<signal.h>#include<stdio.h>// typedef void (*sighandler_t)(int); // sighandler_t signal(int signum, sighandler_t handler);void handler(int signum){ printf("get s

2021-03-29 14:16:36 74

原创 共享内存中写操作

共享内存中 写 操作#include <sys/types.h>#include <sys/shm.h>#include<stdio.h>#include<string.h>#include<stdlib.h>int main(){ int shmid; char *shmaddr; key_t key; key = ftok(".",1);

2021-03-28 10:25:46 196 1

原创 html第二天学习

表格 选项 文本框 列表 等功能实现在这里插入代码片<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1

2021-03-27 15:34:27 48

原创 html 第一天内容学习

<!DOCTYPE html><html lang="zh-CN"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>

2021-03-25 20:56:16 75

原创 2021-03-24 php安装原理学习及其安装

php安装部分 原理学习内容 放弃!学习到的知识点1: 文件路径的配置2 在confg里面改localhost默认3: loadmdod中添加php5 和识别php文件才能运行识别php代码!最后采用学校老师群中phpnow傻瓜式安装Phpnow安装使用步骤在官网下载phpnow,链接:http://phpnow.org/download.php解压,解压在根目录里(不要放在中文目录中)。比如:D:\PHPnow-1.5.6进入D:\PHPnow-1.5.6目录里,双...

2021-03-24 22:03:10 91

原创 消息队列相关学习内容

#include <sys/types.h>#include <sys/ipc.h>#include <sys/msg.h>#include<stdio.h>#include<stdlib.h>#include<string.h>struct msgbuf { long mtype; /* message type, must be > 0 */ char mtext[.

2021-03-24 21:57:33 54

原创 2021-03-23管道学习内容

pipe原型NAME pipe, pipe2 - create pipeSYNOPSIS #include <unistd.h> int pipe(int pipefd[2]); #define _GNU_SOURCE /* See feature_test_macros(7) */ #include <unistd.h> int pipe2(int pipefd[

2021-03-24 21:55:03 86

原创 2021-03-19 open的用法

#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include<stdio.h>#include<string.h>#include<stdlib.h>#include <unistd.h>// off_t lseek(int fd, off_t offset, int whence);// ssize_t read(

2021-03-23 20:13:11 63

原创 2021-03-21 进程内容学习

#include <unistd.h>#include<stdio.h>#include <sys/types.h>int main(){ pid_t pid;// pid_t fork(); pid = getpid(); printf("my pid is : %d\n",pid); while(1); return 0;}~

2021-03-23 20:12:28 63

原创 2021-03-21 c库中的文件读写

include<stdio.h>#include<string.h>int main(){// FILE *fopen(const char *path, const char *mode); FILE *fp; char *str ="jianglongjie henshuai"; char readBuf[128] = {0};// FILE *fopen(const char *path, const

2021-03-21 16:11:13 61

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除