rabbitmq模式07

spring与设计模式之三代理模式

部分内容引用: https://blog.csdn.net/shulianghan/article/details/119798155 一、定义 1.1定义 对于现实生活中的代理,大家非常好理解。我们需要代理,主要因为几个原因: 太忙-例如房产中介、代购 目前对象不是自身可以直接接触的-例如托人办事 ......
模式 设计模式 spring

深入理解spring框架:剖析多线程模式下数据库连接

问题 1、spring框架下,大多数bean都是单例模式。这些单例模式的bean,会在多线程环境下执行(每个http request,可能对应一个线程)。如果bean是有状态的(对象的属性会被修改),如何解决线程安全问题? 2、多线程环境下,db连接如何共享的? db连接复用的粒度,是请求级别还是线 ......
线程 框架 模式 数据库 数据

代理模式(Proxy)

代理模式(Proxy) 1.1.1 摘要 今天是父亲节,首先祝爸爸父亲节快乐身体健康,随着互联网飞速的发展,现在许多软件系统都提供跨网络和系统的应用,但在跨网络和系统应用时,作为系统开发者并不希望客户直接访问系统中的对象。其中原因很多考虑到系统安全和性能因素,这时候聪明的开发者想到了在客户端和系统端 ......
模式 Proxy

AntDesignBlazor示例——暗黑模式

本示例是AntDesign Blazor的入门示例,在学习的同时分享出来,以供新手参考。 示例代码仓库:https://gitee.com/known/BlazorDemo 1. 学习目标 暗黑模式切换 查找组件样式 覆写组件样式 2. 添加暗黑模式切换组件 1)双击打开MainLayout.raz ......
AntDesignBlazor 示例 模式

单例模式(Singleton)的6种实现

单例模式(Singleton)的6种实现 1.1.1 摘要 在我们日常的工作中经常需要在应用程序中保持一个唯一的实例,如:IO处理,数据库操作等,由于这些对象都要占用重要的系统资源,所以我们必须限制这些实例的创建或始终使用一个公用的实例,这就是我们今天要介绍的——单例模式(Singleton)。 使 ......
Singleton 模式

本地套接字 [补档-2023-07-24]

本地套接字 7-1简介 ​ 在Linux系统下,可以使用本地套接字(Unix域套接字)进行进程间通信。本地套接字是一种特殊类型的套接字,用于在同一主机上的进程之间进行通信。 7-2 创建本地套接字服务器的流程 ​ 可以使用TCP或UDP的方式来实现通信,使用TCP就得遵循TCP的流程,UDP就要遵循 ......
套接字 2023 07 24

UDP通信 [补档-2023-07-22]

UDP通信 6-1 简介 ​ UDP通信是面向无链接的,不稳定,不可靠,不安全的一种通信方式。TCP在通信前发送方会向接收方进行三次握手链接,然后确认双方链接后才会进行数据传输,最后四次挥手保证链接关闭。而UDP不会三次握手四次挥手,它会直接向发送方发送数据,无论接收方是否会收到,所以UDP更适合在 ......
2023 UDP 07 22

多路io复用Select [补档-2023-07-16]

select 2.1 简介 ​ select函数可以用于实现高效的多路复用 I/O,同时处理多个文件描述符的事件,包括监听可读、可写和异常条件,具有阻塞和非阻塞模式,并可以设置超时时间。这使得程序能够高效地处理并发任务,提高性能和响应性。 2.2 select函数 ​ 头文件:#include <s ......
Select 2023 07 16

多路io复用pool [补档-2023-07-19]

多路IO- poll 3.1简介 ​ poll的机制与select类似,他们都是让内核在以线性的方法对文件描述符集合进行检测,根据描述符的状态进行具体的操作。并且poll和select在检测描述符集合时,会在检测的过程中频繁的进行用户区和内核区的拷贝,随着文件描述符集合中的数量增大,开销也随之增大, ......
pool 2023 07 19

多路io复用epoll [补档-2023-07-20]

多路io- epoll 4-1简介 ​ 它是linux中内核实现io多路/转接复用的一个实现。(epoll不可跨平台,只能用于Linux)io多路转接是指在同一个操作里,同时监听多个输入输出源,在其中一个或多个输入输出源可用时范慧慧这个源,然后对其进行操作。 ​ epoll采用红黑树来管理待检测的集 ......
epoll 2023 07 20

socket编程 [补档-2023-07-10]

Linux网络编程 1.socket编程 socket是一种通信机制,用于在网络中不同计算机之间进行数据传输,当然也可用用于进程间通信。在linux中,有文件描述符这么个东西,我们可以通过socket函数创建一个网络连接,socket的返回值为一个文件描述符,我们拿到这个文件描述符就可以像操作普通i ......
socket 2023 07 10

设计模式之中介者模式

1. 定义 多个对象之间通过一个中介者对象进行通信和协作,而不是直接相互交互 2. 口语化表述 中介,这在生活中很常见,比如租房中介 通常,有住房出租的房东有很多,需要租房的租客也很多,但是租客难以直接联系房东,这个时候租房中介这个职业就出现了 房东将房屋登记到中介这里,租客来中介这里找房看房,这效 ......
中介者 模式 设计模式 中介

Linux的信号管理 [补档-2023-07-30]

信号 11-1简介: ​ 信号只是表示某个信号,不可以携带大量信息,信号需要满足特点的条件才会产生。是一种特别的通信手 段。 11-2 信号机制: ​ 假设有两个进程A,B,现在进程A给进程B发送信号,进程B在收到信号之前会执行自己的代码,当收到 信号后,无论执行到了哪里,都要暂停执行然后去处理信号 ......
信号 Linux 2023 07 30

freeswitch: esl inbound模式下外呼拨号

相信大家可能接到过一些电话,听上去不象是真人打过来的,比如:通知“您的信用卡到期了”,或者“您订的飞机航班取消了,请尽快改签或取消行程”,这种就是所谓的“自动外呼”系统,技术上讲,可以通过 esl inbound模式实现(注:对esl不熟悉的朋友,戳这里) 大概思路: 先把一些要外呼的任务计划,落地 ......
freeswitch inbound 模式 esl

Linux进程间通信 [补档-2023-07-27]

Linux进程间通信 10-1 简介 ​ 在Linux下,进程之间相互独立,每个进程都有自己不同的用户地址空间。任何一个进程的全局变量在另 一个进程中都看不到,所以进程和进程之间不能相互访问。如果非要交换数据则必须通过内核,在内核中开辟 一块缓冲区。假设有两个进程A B,他们之间想要交换数据就需要A ......
进程 Linux 2023 07 27

Linux的进程管理 [补档-2023-07-25]

Linux进程管理 9-1并发与并行: ​ 并发:在同一个cpu上,并且在一个时间段时,同时运行多个程序。比如在1000毫秒内,我们有5个程 序需要执行,所以我们可以将1000毫秒分为5个200毫秒,让每个程序都占用200毫秒的cpu使用权,这样 在1000毫秒内就可以执行5个程序。 ​ 并行:大于 ......
进程 Linux 2023 07 25

Linux文件IO之二 [补档-2023-07-21]

8-5 linux系统IO函数: open函数: ​ 函数原型:int open(const char *pathname, int flags, mode_t mode); ​ 功能:打开一个文件并返回文件描述符。与c库中的fopen差不多 ​ 参数: pathname:要打开的文件路径名。 fl ......
文件 Linux 2023 07 21

Linux文件IO之一 [补偿-2023-07-21]

Linux文件IO 8-1C标准库IO函数的工作流程 ​ 使用fopen函数打开一个文件,之后会返回一个FILE* fp指针,fp指针指向一个结构体,这个结构体是c 标准io库中的一个结构体,这个结构体有三个重要的成员: 文件描述符:描述符指向一个打开文件表,通过此表可以找到文件的inode表,通过 ......
文件 Linux 2023 07 21

GDB调试程序 [补档-2023-07-19]

gdb调试 ​ 它是gcc的调试工具,调试工具都能干什么就不多说了。 7-1生成调试信息 ​ 在使用gcc编译c/c++的程序时,需要在编译命令中加入 -g 这一参数,它可以为你显示函数名,变量名 等待。例如:gcc -g test.c -o test ​ 7-2启动gdb调试信息 ​ 启动指令:g ......
程序 2023 GDB 07 19

MakeFile文件的使用 [补档-2023-07-13]

makefile-gdb文件 ​ 可以在文件中指定那些文件可以先进行编译,那些文件可以后进行编译,那些文件可以重新编译。他可以自动化编译程序。。。。 6-1 makefile基本规则 ​ 如下: ​ 目标: 依赖 ​ (tab) 命令 ​ 规则三要素: 目标:要生成的目标文件。 依赖:目标文件由那些 ......
MakeFile 文件 2023 07 13

Linux系统的一些实用操作 [补档-2023-07-30]

Linux的实用操作 4-1.常用快捷键 强制停止:当某些程序运行时,或者命令输入错误时,可以通过 ctrl + c 来强制结束当前的操作。 退出或登出:当我们要退出某些用户时,或者要退出某些特殊的页面可以使用 ctrl + d 来进行。(vi/vim 不可用) 历史命令搜索:通过输入 histor ......
系统 Linux 2023 07 30

Linux的用户和权限 [补档-2023-07-07]

Linux用户和权限 3-1. su用户切换命令 exit用户退出命令 ​ 用户切换命令的语法: ​ su [-] [用户名] ​ 其中: ​ - 可选,表示是否在切换用户后加载环境变量,建议带上。 ​ 用户名 可选,表示要切换到那个用户,如果不填则默认切换到root用户上。 ​ 用户退出命令:直接 ......
权限 用户 Linux 2023 07

vi / vim编辑器的使用 [补档-2023-07-01]

vi/vim编辑器 ​ vi/vim编辑器是linux中的文本编辑器,其中vim比vi的功能更加强大,可以编辑shell程序,推荐使用vim,下面也将介绍vim如何使用。 2-1 vi/vim的三种工作模式 命令模式 ​ 在此模式下,所敲的每一个键都是一个命令,不可以进行文本编辑。比如输入w代表保存 ......
编辑器 2023 vim vi 07

C++ 单例模式以及内存管理

引用: https://zhuanlan.zhihu.com/p/37469260 https://www.cnblogs.com/xiaolincoding/p/11437231.html https://blog.csdn.net/unonoi/article/details/121138176 ......
内存 模式

vim模式用法及命令

vim的安装 [root@ycy2023 ~]# yum install vim -y 学习vim编辑器 vim命令模式(重点) 进入命令模式 按a,i,o由命令模式进入编辑模式 按ESC键就可以退出编辑模式进入命令模式 光标移动 按a进入是当前光标所在的字符后光标前输入内容,按i进入是当前光标所在 ......
命令 模式 vim

原型模式

原型模式 是利用克隆方法克隆出新的对象. 定义:原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象 特点:不需要知道任何创建的细节,不调用构造函数 适用场景: 类初始化消耗较多资源 new产生的一个对象需要非常繁琐的过程(数据准备、访问权限等) 构造函数比较复杂 循环体中产生大量对象时 优 ......
原型 模式

单例模式

设计模式 (一)什么是设计模式 设计模式是一种描述在特定上下文中常见问题及其解决方案的模板或蓝图。 它们是在软件工程中解决通用问题的经验总结,被广泛接受并应用于各种编程语言和框架中。 # 什么是设计模式 # 设计模式:就是解决问题的模板 # 大牛们会遇到各种各样的问题,长久以来就形成了一套相对规范的 ......
模式

设计模式—行为型模式之状态模式

设计模式—行为型模式之状态模式 状态(State)模式:对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。 状态模式包含以下主要角色: 环境类(Context)角色:也称为上下文,它定义了客户端需要的接口,内部维护一个当前状态,并负责具体状态的 ......
模式 设计模式 状态 行为

工厂模式

简单工厂 根据工厂类中方法传入的参数返回所需的对象。 客户端(应用层)只知道传入工厂类的参数,对于如何创建对象逻辑不关心 优点:只需要传入一个正确的参数,就可以获取你所需要的对象而无需知道其创建的细节 缺点:工厂类的职责相对过重,增加新的产品需要修改工厂类的判断逻辑,违背开闭原则 coding: 1 ......
工厂 模式

设计模式之单例模式

单例模式 【一】什么是设计模式? 解决问题的模板,大牛们会遇到各种各样的问题,长久一来就形成了一套相对规范的解决办法。 【二】使用模式的好处? 设计模式可以帮助开发人员编写高质量、可重用和易于维护的代码。 通过使用设计模式,开发人员可以避免重复劳动,并确保他们的代码遵循最佳实践和行业标准。 【三】设 ......
模式 设计模式
共4650篇  :1/155页 首页上一页1下一页尾页