work

Rust 入门 (二)

爷,独闯天下 提交于 2019-12-05 20:18:32
我认为学习计算机语言,应该先用后学,这一节,我们来实现一个猜数字的小游戏。 先简单介绍一个这个游戏的内容:游戏先生成一个1到100之间的任意一个数字,然后我们输入自己猜测的数字,游戏会告诉我们输入的数字太大还是太小,然后我们重新输入新的数字,直到猜到游戏生成的数字,然后游戏结束。 创建项目 制作游戏的第一步先创建项目,创建方法和上一节一样,使用 cargo 来创建一个名为 guessing_game 的项目。 cargo new guessing_game && cd guessing_game 项目创建完成,可以运行一下,如果程序打印出 Hello, World! 则证明程序创建完成,运行命令如下: cargo run 读取猜测的数字 正式写游戏的第一步,让游戏先读取我们猜测的数字。我们可以先把打印语句换成提示我们输入数字的提示语句。 use std::io; fn main() { println!("猜测数字游戏,请输入您猜测的数字。"); let mut guess = String::new(); io::stdin().read_line(&mut guess).expect("读取数字失败!"); println!("您猜测的数字是:{}", guess); } 这段代码包含了大量的信息,我们一行一行地过一遍。 1.因为我们需要读取用户的输入,然后把它作为结果打印出来

[转]MongoDB分布式集群搭建手记

别等时光非礼了梦想. 提交于 2019-12-05 15:42:41
一、架构简介 目标 单机搭建mongodb分布式集群(副本集 + 分片集群),演示mongodb分布式集群的安装部署、简单操作。 说明 在同一个vm启动由两个分片组成的分布式集群,每个分片都是一个PSS(Primary-Secondary-Secondary)模式的数据副本集; Config副本集采用PSS(Primary-Secondary-Secondary)模式。 二、配置说明 端口通讯 当前集群中存在shard、config、mongos共12个进程节点,端口矩阵编排如下: 编号 实例类型 1 mongos 2 mongos 3 mongos 4 config 5 config 6 config 7 shard1 8 shard1 9 shard1 10 shard2 11 shard2 12 shard2 内部鉴权 节点间鉴权采用keyfile方式实现鉴权,mongos与分片之间、副本集节点之间共享同一套keyfile文件。 官方说明 账户设置 管理员账户:admin/Admin @01 ,具有集群及所有库的管理权限 应用账号:appuser/AppUser @01 ,具有appdb的owner权限 关于初始化权限 keyfile方式默认会开启鉴权,而针对初始化安装的场景,Mongodb提供了 localhost-exception机制 ,

[转]MongoDB分布式集群搭建手记

末鹿安然 提交于 2019-12-05 15:41:32
一、架构简介 目标 单机搭建mongodb分布式集群(副本集 + 分片集群),演示mongodb分布式集群的安装部署、简单操作。 说明 在同一个vm启动由两个分片组成的分布式集群,每个分片都是一个PSS(Primary-Secondary-Secondary)模式的数据副本集; Config副本集采用PSS(Primary-Secondary-Secondary)模式。 二、配置说明 端口通讯 当前集群中存在shard、config、mongos共12个进程节点,端口矩阵编排如下: 编号 实例类型 1 mongos 2 mongos 3 mongos 4 config 5 config 6 config 7 shard1 8 shard1 9 shard1 10 shard2 11 shard2 12 shard2 内部鉴权 节点间鉴权采用keyfile方式实现鉴权,mongos与分片之间、副本集节点之间共享同一套keyfile文件。 官方说明 账户设置 管理员账户:admin/Admin @01 ,具有集群及所有库的管理权限 应用账号:appuser/AppUser @01 ,具有appdb的owner权限 关于初始化权限 keyfile方式默认会开启鉴权,而针对初始化安装的场景,Mongodb提供了 localhost-exception机制 ,

wk2124 在 rk3288 上的适配与调试

若如初见. 提交于 2019-12-05 14:37:56
2019-11-25 关键字:linux驱动开发、arm驱动适配、kernel开发、SPI转串口 WK2124 是一款 SPI 接口的 4 通道 UART 芯片。说白了就是一款通过 SPI 协议与 CPU 通信并对外表现出具备 4 个 232 串口功能的扩展芯片。它适用于 CPU 引脚资源不够或紧缺的情况,它的最高通信速率能达到 10Mbps。 本篇文章记述的是 WK2124 芯片在软件上的适配过程,属于软件开发范畴。但其实大家都知道,干到驱动这一层,对硬件电路一窍不通的话那是真干不下去。就拿这块芯片的软件层适配来说,我们需要的官方文档有: 1、芯片datasheet; 2、参考驱动程序; 3、参考原理图。 这些文件一般芯片厂商会提供,笔者这里也准备好了一份文件,有需要的可以直接下载: https://pan.baidu.com/s/1tpjTmRO5xgQXF-w7YsUqdA 提取码: juz1 首先来看看 WK2124 的引脚封装,如下图所示: 对于我们来说,在适配阶段需要关心的脚就 5 个,如上图标红框处所示。这些引脚的功用,datasheet 上都已有很详尽的说明: SPI 通信引脚在笔者的 3288 样机上所连接的 CPU 引脚是 SPI2,如下图所示: IRQ 脚在笔者的 3288 样机上所连接的 CPU 引脚是 GPIO7_A2,如下图所示: 然后,还有一个最重要的

Vim 常用

被刻印的时光 ゝ 提交于 2019-12-05 11:49:59
Ctrl+f  屏幕下一页 Ctrl+b  屏幕上一页 0 或 home  移动到行首 $ 或 end  移动到行尾 G  移动到最后 nG   移动到底n行 /work 搜索work :1,$s/word1/word2/g 替换word1为word2 Ctrl+r 重复前一个动作 :set nu 显示行号 来源: https://www.cnblogs.com/wwbz/p/11923315.html

The happy secret to better work,https://www.ted.com/talks/shawn_achor_the_happy_secret_to_better_work/transcript#t-100352

眉间皱痕 提交于 2019-12-05 10:30:23
When I was seven years old and my sister was just five years old, we were playing on top of a bunk bed. I was two years older than my sister at the time -- I mean, I'm two years older than her now -- but at the time it meant she had to do everything that I wanted to do, and I wanted to play war. There are differing accounts of what actually happened that afternoon, but since my sister is not here with us today, let me tell you the true story which is my sister's a little on the clumsy side. Somehow, without any help or push from her older brother at all, Amy disappeared off of the top of the

how to transfer your linux to new work environment

不想你离开。 提交于 2019-12-05 04:12:49
tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys / --warning=no-file-changed --exclude 是忽略备份的那些目录 proc --没用忽略 lost+found --没用忽略 mnt --没用忽略 sys --没用忽略 本地备份恢复没用试过我迁移了一台 直接准备一台一摸一样的环境进行虚拟机的迁移 命令 tar xvpfz backup.tgz -C / 恢复完成后加上 # mkdir proc # mkdir lost+found # mkdir mnt # mkdir sys 加上这几个目录 方法二 完整备份 tar -cvpzf backup.tar.gz --warning=no-file-changed 恢复 tar -cvpzf backup.tar.gz --warning=no-file-changed 如有报错 tar: Exiting with failure status due to previous errors 请直接忽略 开机报错 UUID无法挂载直接楼下一套 vi /etc/fstab --无法编辑 mount -o remount,rw / vi

Python核心技术与实战——十五|Python协程

拈花ヽ惹草 提交于 2019-12-05 02:28:22
我们在上一章将生成器的时候最后写了,在Python2中生成器还扮演了一个重要的角色——实现Python的协程。那什么是协程呢? 协程 协程是实现并发编程的一种方式。提到并发,肯很多人都会想到多线程/多进程模型,这就是解决并发问题的经典模型之一。在最初的互联网世界中,多线程/多进程就在服务器并发中起到举足轻重的作用。 但是随着互联网的发展,慢慢很多场合都会遇到C10K瓶颈,也就是同时连接到服务器的客户达到1W,于是,很多代码就跑崩溃,因为进程的上下文切换占用了大量的资源,线程也顶不住如此巨大的压力。这时候,NGINX就带着事件循环闪亮登场了。 事件循环启动一个统一的调度器,让调度器来决定一个时刻去运行哪个任务,于是省却了多线程中启动线程、管理线程、同步锁等各种开销。同一时期的NGINX,在高并发下也能保持资源消耗低、性能高,相比Apache也支持更多的并发连接。 再到后来,出现了一个很有名的名词——回调地狱(callback hell).很多写过JavaScript的朋友明白那是什么。大家惊喜的发现,这种工具很完美的继承了事件循环的优越性,同时还能提供async/await语法糖,解决了执行性和可读性共存的难题。于是,协程渐渐被更多人发现并看好,也有越来越多的人尝试用Node.js做起了后端开发。 回到Python中,使用生成器来实现协程已经是Python2时代的老方法了

Java Sound Capture from Microphone working code

北慕城南 提交于 2019-12-04 23:45:45
转载自: http://ganeshtiwaridotcomdotnp.blogspot.com/2011/12/java-sound-capture-from-microphone.html Sound Capture / Record from Microphone and Save : working java source code example import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.DataLine; import javax.sound.sampled.TargetDataLine; /** * Reads data from the input channel and writes to the output stream */ public class MicrophoneRecorder

tomcat的work目录的作用

我们两清 提交于 2019-12-04 23:25:23
最近发现,很多网友喜欢把tomcat的work目录里的东西叫做缓存,其实那不是很恰当,work目录只是tomcat的工作目录,也就是tomcat把jsp转换为class文件的工作目录,这也正是为什么它叫work目录而不是cache目录的原因。     jsp,tomcat的工作原理是当浏览器访问某个jsp页面时,tomcat会在work目录里把这个jsp页面转换成.java文件,比如将index.jsp转换为index_jsp.java文件,而后编译为index_jsp.class文件,最后tomcat容器通过ClassLoader类把这个index_jsp.class类装载入内存,进行响应客户端的工作。   tomcat会定时稍描容器内的jsp文件,读取每个文件的属性,当发现某个jsp文件发生改变时(文件的最后修改时间与上次稍描时不相同时),tomcat会重新转换、编译这个jsp文件。但是tomcat的稍描是定时的不是实时的,这也正是为什么jsp文件修改后需要几分钟的时间来等修改过的jsp生效。当然为了即刻生效,很多老前辈都会建议在修改jsp页面后立即清除work目录里的文件。   另外,tomcat容器中,对转换后的java文件(比如:index_jsp.java)的编译最大只支持64k,所以在其他容器中的jsp移植到tomcat容器中时会遇到大jsp文件会发生无法编译的情况