- 博客(6)
- 收藏
- 关注
原创 多线程竞争锁时避免饿死
A线程平均每0.4ms发起一次lock(), 有时候要处理0.4ms以上才能unlock(), 此时A线程刚unlock()就会进入下一次lock(), B线程要跟A线程抢锁,情况差的时候要等几十ms才能拿到。目前找到两种解决方法A线程每次unlock()之后,sleep(0), 相当于主动给其他线程一个机会暂时放弃cpu,也就是释放一些未用的时间片给其他线程或进程使用,就相当于一个让位动作。当线程调用sleep(n)的时候,线程是由运行态转入等待态,线程被放入等待队列中,等待定时器n秒后的中
2022-01-10 16:36:40 365 1
原创 通过flush stdout解决输出不完整问题
进程每秒钟输出log到stdout, 用kill指令杀死进程,发现log经常只有前十几秒甚至一两秒。改成在A内部abort(), 发现log还是不全,改成exit(0)之后正常了。网上查到,exit()保证会flush stdout.那么假如还是采用kill,是否有办法让它flush?kill 默认给程序发出SIGTERM信号,程序可以自己设置收到该信号后如何处理;ctrl+c发出SIGINT信号,也可以设置处理方式;kill -9发出的是SIGKILL,程序不会收到信号,直接被终止。#include
2022-01-09 20:12:30 753
原创 使用Synergy 在局域网Windows和Linux间共享键鼠
折腾了半天,记录一下。Ubuntu 20.04作为client, Win10作为server, 也就是用win的键鼠控制ubuntu.直接安装1.8.8 stable版本,网上说的1.5.0“最后的免费版本”有鼠标用不了的bug在Ubuntu下安装sudo apt install synergy遇到的坑:没有libqt4xxx(后面忘了),通过apt安装,安装前需要先apt update和apt upgrade安装后打开时,提示没有system tray,通过apt get sni-qt解决
2022-01-06 18:13:01 1833
原创 Android Studio问题记录
Error: SSL peer shut down incorrectly网上能找到若干种解决方法改gradle-wrappers.properties,https->httphttps://blog.csdn.net/a4325632/article/details/84231513在build.gradle中添加镜像https://www.jianshu.com/p/194b...
2019-12-10 21:18:41 434
原创 Unity在安卓上的发布和查看资源占用
将Unity项目发布到安卓1、Java JDK最好下载最新版,否则可能与SDK版本不一致https://www.oracle.com/technetwork/java/javase/downloads/index.html安装路径一般在C:/Program Files/Java/jdk1.8.0_231这样的地方, 后面会用到。2、Android SDK可以通过安装Android St...
2019-11-22 11:23:56 511
原创 ffmpeg命令收藏
@TOC批量提取图片ffmpeg -i "xxx.mp4" -r 1 -q:v 2 -f image2 xxx%03d.jpeg-q:v 2 表示图片质量为高
2019-11-11 13:19:57 374
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人