提供手机网站制作哪家好,爱网站关键词查询工具,如何获取网站根目录,搭建网站知识线程通信和进程通信方法
进程间
进程间通信#xff08;英语#xff1a;Inter-Process Communication#xff0c;简称IPC#xff09;#xff0c;指至少两个进程或线程间传送数据或信号的一些技术或方法
管道
单向通信#xff0c;只能在具有亲缘关系的进程之间使用
命…线程通信和进程通信方法
进程间
进程间通信英语Inter-Process Communication简称IPC指至少两个进程或线程间传送数据或信号的一些技术或方法
管道
单向通信只能在具有亲缘关系的进程之间使用
命名管道
命名管道Named Pipe允许无亲缘关系的进程间进行通信。
共享内存
使得多个进程可以访问同一块内存空间是最快的可用IPC形式。是针对其他通信机制运行效率较低而设计的。往往与其它通信机制如信号量结合使用来达到进程间的同步及互斥。
信号量
信号量Semaphore用于控制对共享资源的访问防止出现竞态条件。
消息队列
消息发送者将消息发送到队列中接收者从队列中取出消息
套接字
套接字Socket适用于不同计算机或操作系统之间的进程通信。
信号
信号Signal进程会收到一个信号可以用来通知进程发生了某个事件。
线程间
线程间常用的通信方式有互斥锁读写锁条件变量自旋锁和屏障
互斥锁Mutex
控制对共享资源的访问确保同一时刻只有一个线程可以访问该资源。
读写锁Read-Write Lock
允许多个线程同时读取共享资源但在写入时必须互斥。
条件变量Condition Variable
让线程等待某些条件满足后再继续执行用于线程间通信和同步。
自旋锁Spin Lock
在使用短时间内的锁保护共享资源时相比于互斥锁自旋锁不会导致线程阻塞而是一直进行忙等待直到获得锁。
屏障Barrier
让多个线程在特定点处等待彼此直到所有线程都到达这个点才能继续执行后面的代码。
https://blog.csdn.net/qq_39942341/article/details/134728701?spm1001.2014.3001.5501
数据库事务具有以下四大特性
ACID四个特性 1、原子性Atomicity 原子性是指事务包含的所有操作要么全部成功要么全部失败回滚因此事务的操作如果成功就必须要完全应用到数据库如果操作失败则不能对数据库有任何影响。
2、一致性Consistency 一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态也就是说一个事务执行之前和执行之后都必须处于一致性状态。
3、隔离性Isolation 隔离性是当多个用户并发访问数据库时比如操作同一张表时数据库为每一个用户开启的事务不能被其他事务的操作所干扰多个并发事务之间要相互隔离。
4、持久性Durability 持久性是指一个事务一旦被提交了那么对数据库中的数据的改变就是永久性的即便是在数据库系统遇到故障的情况下也不会丢失提交事务的操作。
面向对象的设计原则
单一职责Single Responsibility Principle
这个原则顾名就可以思义就是一个类应该只负责一个职责术语叫仅有一个引起其变化的原因。简单点说一个类中应该是一组相关性很高的函数及数据的封装个中含义请自行意会。看起来简单但是做起来就难了这可能是六大原则中最难以熟练掌握的一个原则了它高度依赖程序员的自身素质及业务场景。
开闭原则Open Close Principle
一个软件实体应当对扩展开放对修改关闭。即软件实体应尽量在不修改原有代码的情况下进行扩展。
里氏替换原则Liskov Substitution Principle
所有引用基类父类的地方必须能透明地使用其子类的对象。
依赖倒置原则Dependence Inversion Principle
抽象不应该依赖于细节细节应当依赖于抽象。换言之要针对接口编程而不是针对实现编程。
关键点
高层模块不应该依赖低层模块两者都应该依赖其抽象抽象不应该依赖细节细节应该依赖抽象
接口隔离原则Interface Segregation Principle
使用多个专门的接口而不使用单一的总接口即客户端不应该依赖那些它不需要的接口。
迪米特原则Law of Demeter 又名Least Knowledge Principle
一个软件实体应当尽可能少地与其他实体发生相互作用。
https://zhuanlan.zhihu.com/p/58092071
局部变量全局变量静态变量
局部变量
拥有局部作用域的变量
全局变量
在所有作用域都可访问的变量
静态变量
在程序执行前系统就为之静态分配也即在运行时中不再改变分配情况存储空间的一类变量
https://www.cnblogs.com/MinPage/p/13871741.html