Linux[epoll详解]

什么是epoll epoll是什么?按照man手册的说法:是为处理大批量句柄而作了改进的poll。当然,这不是2.6内核才有的,它是在2.5.44内核中被引进的(epoll(4) is a new API introduced in Linux kernel 2.5.44),它几乎具备了之前所说的一切优点,被公认为Linux2.6下性能最好的多路I/O就绪通知方法。 epoll的相关系统调用 epoll只有epoll_create,epoll_ctl,epoll_wait 3个系统调用。 1.
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

读写File

在initstat里面将文件里面存储的数值赋值给要显示的组件,这样可以在App打开时就恢复上次App存储的数据; 每次数值变化就随之存储到文件; 下面是一个完整的示例: import 'package:flutter/material.dart'; import 'dart:io'; import 'dart:async'; import 'package:path_provider/path_provider.dart'; void main()=>runApp(MyApp()); clas
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

c++空类为什么占用1个字符

在C++中空类会占一个字节,这是为了让对象的实例能够相互区别。具体来说,空类同样可以被实例化,并且每个实例在内存中都有独一无二的地址,因此,编译器会给空类隐含加上一个字节,这样空类实例化之后就会拥有独一无二的内存地址。如果没有这一个字节的占位,那么空类就无所谓实例化了,因为实例化的过程就是在内存中分配一块地址。 注意:当该空白类作为基类时,该类的大小就优化为0了,这就是所谓的空白基类最优化。 class T { }; int main() { T t1, t2;
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

最长回文子序列个数

memset(dp,0,sizeof(dp)); for(int i=0;i<len;i++) dp[i][i]=1; for(int i=1;i<len;i++) { int temp=0; for(int j=0;j+i<len;j++) { if(th[j]==th[j+i]) temp=dp[j+1][j+i-1]+2;
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

[TJOI2019]大中锋的游乐场——最短路+DP

题目链接: [TJOI2019]大中锋的游乐场 题目本质要求的还是最短路,但因为有第二维权值(汽水看成$+1$,汉堡看成$-1$)的限制,我们在最短路的基础上加上一维$f[i][j]$表示到达$i$节点,权值为$j$的最短路长度,然后像正常最短路那样转移,最后取终点所有状态的最小值即可。 #include<set> #include<map> #include<queue> #include<stack> #include<cmath> #include<cstdio> #incl
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

字符与整数互换

#include<iostream> #include<cstdio> 整数转换为字符串: #include<cstring> #include<algorithm> #include<stdlib.h> using namespace std; int main() { int num = 100; char str[25]; sprintf(str,"%d",100); printf("%c %c %c",str[0],str[1
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

QT学习小demo之LightMD(MarkDown编辑器)

很早之前就有了写一个类似Windows记事本的想法,加上最近也刚好在学编译原理,所以就想把两者结合起来,于是就打算结合MarkDown,开发一款MarkDown编辑器。 不过由于我之前一直使用的是Java语言居多,对c++并不熟悉,所以一些糟糕的代码风格和规范还望各位大佬谅解! LightMD 即一款基于QT实现的markdown编辑器,当然也可以作为代码编辑器,由于时间与个人能力等原因,目前实现的功能非常有限! 主要包括: 支持语法高亮(目前支持C/C++) 支持MarkDown预览 代码行
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

大数据学习之提交job流程,辅助排序11

辅助排序 WritableComparator排序(类): 1:原理:(借鉴别人的,个人觉得这个要好理解点) 它是用来给Key分组的 它在ReduceTask中进行,默认的类型是GroupingComparator也可以自定义 WritableComparator为辅助排序手段提供基础(继承它),用来应对不同的业务需求 比如GroupingComparator会在ReduceTask将文件写入磁盘并排序后按照Key进行分组,判断下一个key是否相同,将同组的Key传给reduce()执行 2:
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

路飞学城 双色球选购

#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Author : Shaoy Lee Date : 05/07/2019 Desc : Change LOG : """ class SelectBool(object): """选择双色球""" def __init__(self): self.i = 1 self.j = 1 self.red_list = [] self.blue_list = [] def red_
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

SQL-SELECT基本操作

1、SELECT语句 SELECT * FROM web_events; SELECT channel,account_id FROM web_events; 2、LIMIT 限制条件 SELECT * FROM web_events LIMIT 15; ##仅返回前15条数据,缩减查询的时间 3、ORDER BY 1)单个排序 SELECT id, occurred_at, total_amt_usd FROM orders ORDER BY occurred_at LIMIT 10; #
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

优先队列自定义优先级

#include<iostream> #include<queue> using namespace std; struct node{ int x; int y; friend bool operator < (node a,node b) { if(a.x==b.x) return a.y<b.y; return a.x>b.x; } }; int main() {
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

AJPFX关于JAVA多线程实现的三种方式

JAVA多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。 1、继承Thread类实现多线程 继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的一个实例,它代表一个线程的实例,并且,启动线程的唯一方法就是通过Thread类的start()实例方法。start()
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

python第十九天

今日内容: 1. random 模块 2. json模块 3. pickle 模块 4.hashlib 模块 5. hmac 模块 6. shutil 模块 7. shelve 模块 1. random 模块: random 模块 获取随机值 import random for i in range(10): print(random.random()) # random.random() 随机获取0~1 之间的数字,不包括0和1, 返回的是浮点型0.531990294375990
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

[Beta]Scrum Meeting#2

github 本次会议项目由PM召开,时间为5月7日晚上10点30分 时长20分钟 任务表格 人员 昨日工作 下一步工作 木鬼 撰写博客 整理文档 撰写博客 swoip 模块松耦合,文件结构调整 为改进界面做准备(改进界面) 改进界面 bhlt 模块松耦合,文件结构调整 增加多位置点击/划动测试 dsz 模块松耦合,文件结构调整 为改进界面做准备(改进界面) 改进界面 开会照片(拍摄者:木鬼) 燃尽图 工作报告和困难总结 阶段刚刚开始,暂时没有问题 签入记录 可以在此commits/beta查
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

与丑数类似的质因子

#include<iostream> using namespace std; const long long p=1e5+5; const long long q=1e18; long long min(long long x,long long y,long long z) { long long k1; k1=x<y?x:y; long long k=k1<z?k1:z; return k; } int main() {
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

go语言之文件操作

一: 相关的API 1func Create(name string) (file *File, err Error) 根据提供的文件名创建新的文件,返回一个文件对象,默认权限是0666 2 func NewFile(fd uintptr, name string) *File  根据文件描述符创建相应的文件,返回一个文件对象 3 func Open(name string) (file *File, err Error) 只读方式打开一个名称为name的文件 4 func
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

辗转相除最小公倍数的递归求法

#include<iostream> using namespace std; int gcd(int a,int b) { return a%b?gcd(b,a%b):b; } int main() { int m,n; while(cin>>m>>n) { int sum=m+n; int Sum=m*n; m=m>n?m:n; n=sum-m; i
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

JSP的Servlet

在JSP中写Servlet时,需要在web.xml下配置jsp到Servlet的映射,但是折腾了半天,其实在当前的myeclipse中根本不需要配置,只要在开始创建一个web project而不是其他的什么project,这样在项目下创建Servlet时会在web.xml中自动编写。 需要注意的是以下几点: 1、在jsp文件的action中需要这样写 2、在对应的Servlet中需要在import后面也就是类名前加上
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

P2014 选课 树形dp

   题目描述 在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习。现在有N门功课,每门课有个学分,每门课有一门或没有直接先修课(若课程a是课程b的先修课即只有学完了课程a,才能学习课程b)。一个学生要从这些课程里选择M门课程学习,问他能获得的最大学分是多少? 输入输出格式 输入格式: 第一行有两个整数N,M用空格隔开。(1<=N<=300,1<=M<=300) 接下来的N行,第I+1行包含两个整数
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0

周期字符串

#include<iostream> #include<cstdio> #include<cstring> #include<cstdlib> #include<algorithm> typedef long long LL; using namespace std; int main() { char str[105],period[105]; scanf("%s",(str+1)); int lenth = strlen(str+1);
分类: 其他 发布时间: 05-08 23:01 阅读次数: 0