6 Java内存模型基础知识 6.1 并发编程模型的两个关键问题 线程间如何通信?即:线程之间以何种机制来交换信息 线程间如何同步?即:线程以何种机制来控制不同线程间操作发生的相对顺序 有两种并发模型可以解决这两个问题: 消息传递并发模型 共享内存并发模型 这两种模型之间的区别如下表所示: imag ...
分类:
编程语言 时间:
2020-12-09 12:05:39
阅读次数:
7
在线安装: bin/logstash-plugin install logstash-filter-json_encode 这里可能会保一个mmap 的错误 Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00 ...
分类:
Web程序 时间:
2020-12-08 13:03:23
阅读次数:
15
clone linux 创建线程(pthread_create)和进程(fork)的过程非常类似,都是主要依赖 clone 函数,只不过传入的参数不同而已。 如此一来,内核只需要实现一个 clone函数,就既能创建进程,又能创建线程了,例如; 创建进程: clone(SIGCHLD) 创建线程: c ...
分类:
编程语言 时间:
2020-12-04 11:36:29
阅读次数:
13
原创宋宝华Linux阅码场2018-01-25本文解释swappiness的作用,以及swappiness=0究竟意味着什么。内存回收我们都知道,Linux一个进程使用的内存分为2种:file-backedpages(有文件背景的页面,比如代码段、比如read/write方法读写的文件、比如mmap读写的文件;他们有对应的硬盘文件,因此如果要交换,可以直接和硬盘对应的文件进行交换),此部分页面进p
分类:
移动开发 时间:
2020-12-04 11:06:37
阅读次数:
11
在树莓派上运行自己的程序的时候报了错误 Can't open /dev/mem: Permission denied RuntimeError: ws2811_init failed with code -5 (mmap() failed) ,看了网上好像没有什么解决办法,分享一个自己的 在命令行下 ...
分类:
其他好文 时间:
2020-11-04 18:20:31
阅读次数:
21
以多窗口买票为例。 多线程操作共享数据存在安全问题。 是由于数据操作的原子性被破坏导致的。 if语句和之后的operate语句应该具有原子性。没有锁,在if 与 operate 之间可能数据被其他线程修改了。导致数据安全问题。 导致原子性丢失的原因有多个,比如线程自己阻塞,cpu资源调度导致线程挂起 ...
分类:
编程语言 时间:
2020-10-20 16:44:08
阅读次数:
42
隔离并发,不共享内存,使用消息进程通信 import 'dart:isolate'; ...
分类:
其他好文 时间:
2020-09-24 00:04:32
阅读次数:
33
1 文件锁 文件锁,也被成为记录锁,可以控制不同进程对于同一个文件的同步访问,linux底下 实现的机制有flock(),该调用是对整个文件进行加锁。还有lockf以及fcntl,其中lockf是对 fcntl的封装,可以实现对文件当中的某个部分进行加锁,flock和lockf都是建议锁而非强制 锁 ...
分类:
系统相关 时间:
2020-09-17 23:17:43
阅读次数:
39
简介 内容总结自《MySQL技术内幕InnoDB存储引擎》第2版。 概要 数据库:是一个操作系统文件,frm、MYD、MYI、ibd 等为结尾的文件。 实例:MySQL 由后台线程和一个共享内存区组成。真正用于操作数据库文件。 MySQL 被设计为一个单进程多线程的数据库。 存储引擎是基于表的,而不 ...
分类:
数据库 时间:
2020-09-17 22:25:04
阅读次数:
100
背景: 通常在UNIX下面处理文本文件的方法是sed、awk等shell命令,对于处理大文件受CPU,IO等因素影响,对服务器也有一定的压力。关于sed的说明可以看了解sed的工作原理,本文将介绍通过python的mmap模块来实现对大文件的处理,来对比看他们的差异。 说明: mmap是一种虚拟内存 ...
分类:
编程语言 时间:
2020-09-17 21:25:55
阅读次数:
40