<C++网络编程随笔>常用Socket函数总结

因为科研训练的要求,需要实现wifi路由器的抓包以及监听和数据流量分析的软件,故开始学习网络编程的相关知识。首先在语言上,考虑到C++和Python在网络编程上对于我而言都差不多,故选择C++进行网络编程。 C++网络编程基本上都是通过调用Winsock里的api来对套接字进行操作,目前在学习Winsock2。利用winsock的api网络编程分为服务器端和客户端两种操作流程。大致的流程图引用vc驿站https://www.cctry.com/教程的图说明: 对于服务器端,首先建立监听sock
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

Java 中的线程 thread

一、问:线程有哪些状态? new, runnable, running, waiting, dead 线程状态间的流转 二、问:线程实现方式? 实现 Runnable 接口,然后new Thread, 将实现的类对象传入Thread 构造函数 继承Thread (细心同学会发现,Thread本身就是实现Runnable 接口) 三、问:举个线程死锁的例子 A: 你先给我钱,我就给你货 B: 你先给我货,我就给你钱 四、问:线程使用场景? 常见的浏览器、Web服务(现在写的web是中间件帮你完成
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

124. 二叉树中的最大路径和。 递归

给定一个非空二叉树,返回其最大路径和。 本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。 示例 1: 输入: [1,2,3] 输出: 6 示例 2: 输入: [-10,9,20,null,null,15,7] 输出: 42 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/binary-tree-maximum-path-sum /** * Definition for a bi
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

如何配置让80端口转到8080端口上

将以下shell脚本保存到一个.sh文件中,然后执行就可以将80端口的request访问指向8080了 iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

OAuth2.0的定义

1. 什么是OAuth2.0 * 用于REST/APIs的代理授权框架(delegated authorization) * 基于令牌Token的授权,在无需暴露用户密码的情况下,使应用能获取对用户数据的有限访问权限 * 解耦认证和授权 * 事实上的标准安全框架,支持多种用例场景 * 服务器端WebApp * 浏览器单页SPA * 无线/原生App * 服务器对服务器之间 2. OAuth 2.0 历史 * 大致始于200
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

flutter在线站点

机器模拟器经常启动不了,只是为了看下一些例子源码,可以直接在这里运行 https://dartpad.cn/
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

0002JavaSE阶段-数据类型、运算符等

一、进制 /* 进制:(了解) 1、进制的分类 十进制: 数字范围:0-9 进位规则:逢十进一 二进制: 数字范围:0-1 进位规则:逢二进一 八进制: 数字范围:0-7 进位规则:逢八进一 十六进制: 数字范围:0-9、A-F(或者a-f) 进位规则:逢十六进一 十进制 二进制 八进制 十六进制 0 0 0 0 0 1 1 1 1 1 2 2 10 2 2 3 3 11 3 3 4 4 100 4 4 5 5 101 5 5 6 6 110 6 6 7 7 111 7 7 8 8 1000
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

Kafka创建SSL证书

对于消息组件,如果按照最初的设计来讲,性能最高得就是RabbitMQ,因为RabbitMQ设计比较完整,而Kafka不同,Kafka最初的设计最大的坑:没有安全认证,所以最初的一些系统设计的时候为了考虑到安全性,所以采用了性能较差的ssl认证方式来进行出来,也就是说使用证书的方式来处理认证操作。 如果要想进行证书的ssl处理,那么肯定需要通过java中的keytool工具生成相应的证书信息,而后将此证书信息内容交给客户端与服务端共同匹配后才可以访问。 一、生成ssl证书 1、 为了方
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

顺序表有序插入数据

#include <stdio.h> #include <string.h> #include <stdlib.h> typedef struct { int data[8]; int length; }SqNode; int FindEle(SqNode &L,int x){ int j=0; for (; j < L.length; ++j) { if (x<L.data[j]){ printf("%d",j);
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

常用命令之二

df 查看磁盘空间 df df -h 查看具体大小,-h表示以较高可读性进行展示。 fileSystem >分区 size > 大小 used > 被使用的 Use% > 使用百分比 Mounted on> 挂载点 ------------------------------------------------------------------- free 查看内存情况 free -m 以M单位查看。free=1134,表示可用内存。 swap 表示内存不够后,将硬盘作为内存。 total=
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

(二)logcat/trace.txt日志文件的分析

1.logcat日志文件 >android日志系统提供了记录和查看系统调试信息的功能,日志都是从各种软件和一些系统的缓冲区中记录下来的,缓冲区可以通过logcat命令来查看和使用 使用方式: adb logcat [<option>]...[<filter-spec>].. >logcat是以如下开头的: ---------beginning of xxx >开发者选项,有个叫做“日志记录器缓冲区大小”,默认是256k,日志是循环写入环形缓冲区的,通常情况下,写满时最旧的日志会被删除以给新输出
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

mysql+servlet+ajax实现批量删除功能

1.数据连接池采用c3p0,配置如下 <?xml version="1.0" encoding="UTF-8"?> <c3p0-config> <!--c3p0配置1--> <named-config name="c3p0"> <!-- 连接参数 --> <property name="driverClass">com.mysql.jdbc.Driver</property> <property name="jdbcUrl">
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

flutter分号还是逗号

↵ 小结下flutter分号还是逗号,开始的时候都不知道到底要输入哪个符号 ,还是有点乱,供自己记录查看下 MaterialApp ();分号好像除了这个大部分逗号,ListTile();长列表动态时候分号 Center(), Scaffold(), AppBar(), Container(), ListView(), children: <Widget>[ ], Column(), MaterialApp->Scaffold home:Scaffold( appBar: AppBar( ti
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

lua中实现对一个表的监控

监控内容:访问表中的元素和更新表中的元素 代码: 1 local index = {} 2 3 --注意:元表也是表,其中的元素也需要用合理分隔符分开 4 local mt = 5 { 6 __index = function(t,k) 7 print("访问元素:" .. tostring(k)); 8 return t[index][k]; 9 end, 10 11 __newindex = function(
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

【Docker__镜像】自定义镜像

1、编写 (1)自定义mycentos目的使我们自己的镜像具备如下: 登陆后的默认路径 vim编辑器 查看网络配置ifconfig支持 (2)准备编写DockerFile文件 mkdir mydockerfile vim Dockerfile file首字母要小写,不然报错 Dockerfile内容如下 FROM centos MAINTAINER zzyy<[email protected]> ENV MYPATH /usr/local WORKDIR $MYPATH
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

Discourse 发布帖子的时候下载图片到本地

在默认情况,如果你的主题上有远程的图片的话,Discourse 会尝试现在到本地。 但是需要注意的是 Discourse 采用的是后台进程批量上传的方式。 在你首先对你的发布内容进行编辑的时候,图片还是会引用远程图片地址。 这里有 2 个参数, 第一个参数是: editing_grace_period 这个参数表示的是多少秒以后开始对图片下载到本地,默认是 300,对应的是 5 分钟。 那么在你内容创建并且发布后的 5 分钟后,Discourse 才会开始下载你内容中的图片到你的服务器上。 另
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

LayUI表单

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <title></title> <link rel="stylesheet" href="layui/css/layui.css"> </head> <body> <!-- 你的HTML
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

hdu1007 平面最近点问题

http://acm.hdu.edu.cn/showproblem.php?pid=1007 题意:即给定坐标系上N个点,找到距离最短的两个点。 参考博客:https://www.cnblogs.com/zyxStar/p/4591897.html #include <iostream> #include <cstdio> #include <cstring> #include <cmath> #include <algorithm> using namespace std; const do
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

ChromeOptions常用配置与WebUI实操

from selenium import webdriver from time import sleep #Chrome_options常规操作 #1.如何在调用浏览器时候就是最大化窗体? #2.自动化启动时,如何驱动浏览器警告条 #3.浏览器在启动时,如何有缓存 #4.浏览器如何在隐身模式与常规模式切换 options = webdriver.ChromeOptions() #窗体最大化 options.add_argument('start-maximized') #无头模式 # opt
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0

操作系统之线程详细笔记

在传统的操作系统中,每个进程都有一个地址空间和一个控制线程。事实上,这是大部分进程的定义。不过,在许多情况下,经常存在在同一地址空间中运行多个控制线程的情形,这些线程就像是分离的进程。下面我们就着重探讨一下什么是线程 线程的使用 多线程之间会共享同一块地址空间和所有可用数据的能力,这是进程所不具备的 线程要比进程更轻量级,由于线程更轻,所以它比进程更容易创建,也更容易撤销。在许多系统中,创建一个线程要比创建一个进程快 10 - 100 倍。 第三个原因可能是性能方面的探讨,如果多个线程都是 C
分类: 其他 发布时间: 06-21 22:51 阅读次数: 0