自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 OpenWrt编译支持SD卡

一、修改dts文件文件位置:openwrt/target/linux/ramips/dts/xxx.dtssdhci@10130000 { compatible = "ralink,mt7620-sdhci"; reg = <0x10130000 4000>; interrupt-parent = <&intc>; interrupts = <14>; status = "okay"; // 主要添加这一条

2021-11-03 19:23:09 1094

原创 OpenWrt 支持 合宙 cat1 Luat 4G Air 724UG模块 ttyUSB功能

1、make menuconfig需要支持Kenrel modules -> USB Support -> kmod-usb-net -> kmod-usb-net-rndis2、添加配置。内核文件路径大致如下openwrt/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7628/linux-3.18.29/drivers/usb/serial/option.c修改两个文件 :注意 P_

2021-11-03 19:22:12 947

原创 OpenWrt 编译相关

使用ubuntu18.04编译先执行export FORCE_UNSAFE_CONFIGURE=1重新编译:rm -rf build_dir/ tmp/ && make clean安装依赖:apt-get install subversion build-essential libncurses5-dev zlib1g-dev gawk git ccache gettext libssl-dev xsltproc gcc g++ binutils patch bzip2 fle

2021-11-03 19:06:54 705

原创 OpenWrt 把SD卡挂载到 /overlay

一、安装工具opkg install kmod-fs-ext4 e2fsprogs fdisk // 格式化工具opkg install block-mount注:主要安装 block-mount输入:block info可以看到SD卡信息。二、格式化SD卡sd卡:mkfs.ext4 /dev/mmcblk0p1U盘:mkfs.ext4 /dev/sda1三、转移现有文件到SD卡上。挂SD卡:mount /dev/mmcblk0p1 /mnt ; tar -C /ove

2021-11-03 18:57:00 4690

原创 GO 中 sync.WaitGroup 使用说明

这个连接讲的很清楚了。

2021-03-23 09:28:59 111

原创 GO 并发打印上亿条信息而不崩溃

golang 中使用 go 命令可以创建并发任务,理论上是可以开启无穷个,但限于计算机资源有限,并不可以无穷。注:在虚拟机中进行。配置 1核心 256M内存。例:package mainimport ( "fmt" "sync" "time")func main() { var wg sync.WaitGroup for i := 0; i < 1000*1000*1000; i++ { wg.Add(1) go func(i int) { defer wg.D

2021-03-22 16:58:30 143

原创 GO语言技巧之友好关闭 chan

在go语言中,如果多次close 管道会产生 panic,可能需要 recover 才使程序恢复正常。例:package mainfunc main() { // 创建管道 c := make(chan string, 1) close(c) close(c) // 多次关闭}输出:panic: close of closed channelgoroutine 1 [running]:main.main() Z:/GO/test/useTools/test00

2021-03-22 14:38:00 406

原创 GO语言提前取消定时器

当需要提前取消定时任务的时候,不能直接关闭定时器。例:package mainimport ( "fmt" "time")func run(t *time.Timer) { <-t.C fmt.Println("Timer has expired.")}func main() { t := time.NewTimer(3 * time.Second) fmt.Println("Timer start.") go run(t) //t.Stop() // 停止定

2021-03-18 10:42:16 1106

原创 GO语言退出协程之超时设置

GO语言协程超时任务设置协程超过一定时间后退出package mainimport ( "fmt" "time")func run(done chan string) { t := time.NewTimer(time.Second * time.Duration(2)) defer t.Stop()L: for { select { case <-done: fmt.Println("run stop signal") break L // 跳出for

2021-03-17 11:19:40 761

原创 GO语言退出协程之管道通信 chan 和 select

GO语言协程退出操作package mainimport ( "fmt" "time")func run(done chan string) { L: for { select { case <-done: fmt.Println("exit") continue L default: } time.Sleep(time.Second * 1) fmt.Println("loading...") }}func main() { // 创

2021-03-17 09:22:27 290

原创 GO语言中 range 陷阱

Go 语言中 range 关键字用于 迭代数组(array)、切片(slice)、链表(channel)或集合(map)的元素,类似于 PHP 的 foreach;同样的 for 也可以实现这些功能,但是却有不同。例:package mainimport "fmt"type student struct { Name string Age int}func main() { m := make(map[string]*student) stus := []student {

2021-03-16 23:48:10 711

原创 一文讲完 GO 语言 goto、break、continue 三个语法作用

GO 中有三个跳转语句 goto、break、continue 但功能是不一样有所区别:1、break 跳出后不会再进入循环 func main() { L: for i := 0; i < 10; i++ { for { fmt.Println(i) break L } } } 输出:02、continue 跳出后会在进入循环,但不执行初始化 func main() { L: for i := 0; i < 10;

2021-03-16 11:52:13 276

原创 Linux 开放内存作为存储盘【SWAP交换空间】

1、修改/etc/ssh/ssh_config,在Host *下添加你的端口Host *Port 22Port [YOUR_PORT]#ForwardAgent no2、重启ssh$ sudo service ssh restart3、重新连接新ssh端口,成功后把22端口注释掉Host *#Port 22 “注释用#”Port [YOUR_PORT]#ForwardAgent no...

2020-05-09 09:44:06 148

原创 PHP 在 Ubuntu 中配置 Apache Web服务【可能有所帮助】

安装 php 扩展$ sudo apt-get install libapache2-mod-php5配置apache1.拷贝 /etc/apache2/sites-available/000-default.conf 成 【工程名】.conf$ sudo cp /etc/apache2/sites-available/000-default.conf \/etc/apache2/sites-available/xxxx.conf2.编辑 xxxx.conf配置 DocumentRoot

2020-05-09 09:34:04 125

原创 在 Docker 容器中配置 xdebug 用于 phpStorm 中调试【属于远程调试】

1.启动Docker并进入容器内。2.安装 Xdebug$ sudo pecl install xdebug$ sudo docker-php-ext-enable xdebug3.查看是否安装了xdebug$ php -m看到最后:4.配置php.ini文件(可以用 $ sudo find / -name php.ini 搜索)$ sudo vim php.ini写入并修改有备注的信息[xdebug]zend_extension=xdebug.soxdebug.auto_t

2020-05-09 09:16:40 485

原创 Docker 基本命令 【勉强够用】

1.$ sudo docker search <images_name> #在官网查找docker镜像2.$ sudo docker pull <images_name> #下载Ubuntu镜像(例如 docker pull ubuntu:16.04)3.$ sudo docker images -a #查看系统下的镜像4.$ sudo docker run -it <images_name> /bin/bash #创建容器并进入容器(exit 后会停止容器)

2020-05-09 08:59:01 105

原创 Ubuntu 操作小技巧 【也许对你有用】

1.修改鼠标中间功能# 第二个数字为中键映射,改成别的数字比如25 ,就是禁用了中建的功能$ sudo xmodmap -e "pointer = 1 2 3 4 5 6 7 8 9"2.修改防火墙# 1.看防火墙开放端口$ sudo ufw status# 2.关闭防火墙$ sudo ufw disable# 3.开启防火墙$ sudo ufw enable# 4.端口操作...

2020-05-07 15:56:32 155

原创 Git 常用命令 【收藏起来以备不时之需】

-----------------------------------------git 操作命令------------------------------------------ git init #新建git仓库 git add <filename> #添加文件到暂存区 git add -f <filename> #强制添加 git r...

2020-05-07 15:41:50 102

原创 Ubuntu 编译安装php 以及配置 php-fpm

下载最新源代码下载地址:https://www.php.net/downloads.php解压到当前目录 $sudo tar -zxf php-*.tar.gz安装编译工具和依赖包$sudo apt-get install build-essential libxml2-dev openssl libssl-dev \ libcurl4-gnutls-dev make curl l...

2020-05-07 14:59:03 973

空空如也

空空如也

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

TA关注的人

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