- 博客(23)
- 收藏
- 关注
原创 计算机系统基础-进程、线程、PV信号量
P(s) :申请/锁定资源 V(s):释放/解锁资源。一个进程下的两个线程(线程1 和 线程2),可共享:内存地址空间、代码、数据、文件;信号量表示资源数量,信号量初值最大是资源的总数,表示没有任何操作。前趋A执行后需要通知后继V(s),有过少个后继通知多少个V(s)后继B开始前检查前趋P(s), 有多少个前趋检查多少个P(s)A是前趋,B是后继,记录为(A,B)有多少个箭头就会有多少个信号量。
2024-09-30 11:33:17 190
原创 计算机系统-指令集
RISC(简洁指令系统): 新指令从已有指令中寻找组合,形成子程序库,支持多寄存器寻址。CISC(复杂指令系统): 创建新指令,可以使用流水线 只是不适合。微程序(可以对指令集进行解释)机器的cpu只能识别机器语言。
2024-09-26 17:23:43 117
原创 langChain学习笔记——StuffDocumentsChain、ReduceDocumentsChain、MapReduceDocumentsChain、RefineDocumentsChain
MapReduceDocumentsChain首先传递每个文档到LLM,然后通过ReduceDocumentsChain简化文档,使用场景和ReduceDocumentsChain类似,但是在简化文档之前需要进行LLM的初始化调用。reduceDocumentsChain通过迭代简化组合文档,将文档分成小于某个context长度的小块并传入LLM,得到响应后继续进行此操作,直到将所有内容传到最后一个LLM,适用于有很多文档,并且可以并行执行。顺序操作,不能并行操作。
2024-04-03 16:00:06 759
原创 linux常用命令
2. 查询压缩包指定时间内的日志:zcat c*.gz| sed -n '/2020-12-15 16:30:00/,/2020-12-15 17:30:00/p'。6. 查询目录下所有文件中包含某个关键字的日志:grep -r "{关键字}" {路径}。4. 安装sftp: yum install openssh-clients。
2022-09-23 14:13:13 328 1
转载 vector
vector类为内置数组提供了一种替代表示,与string类一样 vector 类是随标准 C++引入的标准库的一部分 ,为了使用vector 我们必须包含相关的头文件 :#include 使用vector有两种不同的形式,即所谓的数组习惯和 STL习惯。一、数组习惯用法1. 定义一个已知长度的 vector :vector ivec( 10 ); //
2014-11-01 15:42:59 535
转载 error LNK2019: 无法解析的外部符号 ___glutInitWithExit@12,该符号在函数 _glutInit_ATEXIT_HACK@8 中被引用 1>GEARS.obj : er
error LNK2019: 无法解析的外部符号 ___glutInitWithExit@12,该符号在函数 _glutInit_ATEXIT_HACK@8 中被引用 1>GEARS.obj : error LNK2019: 无法解析的外部符号 ___glutCreateWindowWithExit@8,opengl的高级菜鸟问题 看了一本书《OpenGL三维图形系统开发与应用技
2014-08-27 09:52:37 818
转载 VC++中Format函数详解
函数说明 Format是CString类的一个成员函数,它通过格式操作使任意类型的数据转换成一个字符串。函数声明 function Format(const Format: string; const Args: array of const): string; overload;函数功能 事实上Format方法有两种形式,另外一种是三个参数的,主要区别在于它是线程安全的
2014-08-19 22:13:18 777
转载 编写读取XML文件的简单入门
#import named_guids using namespace MSXML; class CTestDlg : public CDialog { ...... protected: CTreeCtrl m_tree; MSXML::IXMLDOMDocumentPtr m_pl
2014-08-16 20:31:29 483
转载 CScrollView
调用SetScrollSizes() 让 CScrollView 知道你的“逻辑视图”的大小,获得大小信息后,操纵传递给 OnDraw() 的DC,从而支持滚动 CScrollView 如何运作: CScrollView ( VIEWSCRL.CPP ) · m_nMapMode —— 在 SetScrollSizes(
2014-07-16 22:11:17 907
转载 CDC::SetBrushOrg设置画刷的原点用来干什么?
为什么要这样?Brush有很多种,用得最多的是纯色画刷,但是有很多图形画刷, 如 BOOL CreatePatternBrush( CBitmap* pBitmap ); 就是用一块图片建立一个画刷,那个原点就是针对这个用作画刷的图片而言的。建立一个bitmap资源,用CBitmap 的Load将该资源装入,然后用该Bitma
2014-07-08 17:14:58 1120
转载 Invalidate(),UpdateAllViews(),UpdateWindow( )
void Invalidate( BOOL bErase = TRUE ); 该函数的作用是使整个窗口客户区无效。窗口的客户区无效意味着需要重绘,例如,如果一个被其它窗口遮住的窗口变成了前台窗口,那么原来被遮住的部分就是无效的,需要重绘。这时Windows会在应用程序的消息队列中放置WM_PAINT消息。MFC为窗口类提供了WM_PAINT的消息处理函数OnPaint,OnPaint负责重绘窗
2014-07-08 16:39:55 757
转载 BLENDFUNCTION结构体
AlphaBlend是Window自带的GDI函数,在作GUI的时候为了达到更漂亮的效果我们常常用它。 这种结构的混合控制通过指定源和目标位图的混合功能。 typedef struct _BLENDFUNCTION { BYTE BlendOp; BYTE BlendFlags; BYTE SourceConstantAlpha; BYTE AlphaFor
2014-07-08 15:56:22 1308
转载 透明位图--SRCINVERT用法
如果一个单色位图向彩色位图转换,那么单色位图为1的部分(也就是白色部分),会转换为彩色位图的背景色,单色位图为0的部分(黑色部分),会转换为彩色位图的前景色。如果一个彩色位图向单色位图转换,那么彩色位图的背景色转换到单色位图中则为1(白色),其他的则转换为0(黑色)。当然上面的1和0都是指bit位的值,还有这些转换是在设备上下文间的块数据操作前就进行的。由于windows上所有的位图操
2014-07-08 15:43:28 786
转载 常用的鼠标操作
2008-07-23 09:17:58| 分类: VC|举报|字号 订阅1.非客户鼠标事件:非客户区域包括客户区域以外的所有窗口部分,包括标题栏、菜单栏、滚动条等。在客户鼠标的事件前面加上NC的内容是非客户事件,行为之间的差别是根据鼠标按钮被单击时的鼠标位置决定的。例如:WM_NCLBUTTONDOWN2.俘获和释放鼠标调用CWND成员函数SETC
2014-07-06 19:53:02 779
转载 static作用
在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c。下面是a.c的内容char a = 'A'; // global variable
2014-07-02 19:51:16 422
转载 CTreeCtrl
VC6中树状控件相较其它的控件如编辑框、按钮、IP地址来说编程实现复杂一点,但是相应的可以实现的功能也多一些,最近我在学习利用VC6进行SNMP编程过程中就需要用到树状控件,另外还需要利用CString类来对字符串进行一些处理,由此就萌生了一个想法,即利用树状控件作一个程序,该程序左边是一个树状控件,里面列出了对字符串的各种操作(如获取字符串的长度,去掉左边/右边的空字符等),右边是对应的各种操作
2014-06-23 15:57:01 479
转载 TV_ITEM结构
作用:该结构是CTreeView的一个项。结构原型:typedef struct _TV_ITEM { tvi UINT mask; HTREEITEM hItem; UINT state; UINT stateMask; LPSTR pszText; int cchTextMax; int iImage; int iSelectedImage; int cChildren;
2014-06-20 17:22:46 2153
转载 VC通用控件编程之CImageList控件
2008-03-20 13:39:47| 分类: VC|举报|字号 订阅图像列表控制(CImageList)是相同大小图像的一个集合,每个集合中均以0为图像的索引序号基数,图像列表通常由大图标或位图构成,其中包含透明位图模式。可以利用WINDOWS32位应用程序接口函数API来绘制、建立和删除图像,并能实现增加、删除、替换和拖动图像等操作。图像列表控制提供了控
2014-06-20 16:38:34 584
转载 WM_Notify与消息反射
关于WM_NOTIFY与消息反射—耗费我两天时间才解决的问题www.firnow.com 时间 : 2010-06-22 作者:佚名 编辑:壹枝雪糕 点击: 1306 [ 评论 ]综合资源电子书社区 其实,问题很简单,我想在listctrl响应NM_SETFOCUS的同时通知其父窗口(其实我这句话说错了,listctrl只能响应=NM_SETFOCUS,为什么有个“=”呢?稍后解释),最幼
2014-06-19 15:50:00 544
转载 Window下拖放操作Drag & Drop 全解析
一、基本概念拖放,是指用鼠标拖动的方法,在不同程序的窗口之间、同一个程序的不同窗口之间或同一程序同一窗口的不同控件之间,进行移动、复制和粘贴等操作的技术。拖放操作是在操作系统的帮助下完成的。被拖动的对象首先向操作系统注册它使用的数据格式,并按指定的数据格式提供数据,拖放操作结束时,接收拖放的窗口按指定的数据格式提取有关数据,并根据提取的数据生成相应的对象。二、两种拖放方式拖
2014-06-17 11:04:58 3294
转载 MoveWindow()
MoveWindow只能设置窗口的大小和位置;SetWindowPos拥有MoveWindow的全部功能之外,还可以设置窗口的层叠关系(如,把指定的窗口放在所有窗口的最上层--always on top就可以用这个函数、或者把指定的窗口放在另一个窗口的下层,等等)。 没有什么优缺点可言,只是功能上的大小有别。你完全可以不用MoveWindow,而只用SetWindowPos;但是,在只
2014-06-15 10:04:20 858
转载 控件“树”中多选拖放功能实现
控件“树”中多选拖放功能的实现发布日期: 2/14/2002 | 更新日期: 6/30/2004控件”树”(tree)能够清晰地显示所包含数据的继承关系,是一个强有力的控件。但是真正掌握并能运用CTreeCtrl类的众多特性并不是一件容易的事情。在Visual C++ Developer杂志的9月份、10月份这两期中,Stephen介绍了两个类CBitmapTree和C
2014-06-15 09:43:33 565
转载 CBitmap::GetBitmap
CBitmap::GetBitmapint GetBimap( BITMAP* pBitMap );返回值:调用成功时返回非零值,否则为0。参数: pBitMap 指向BITMAP结构的一个指针,不能为NULL。 说明:本函数用于查看CBitmap对象的信息。返回的信息存放在pBitMap指向的BITMAP结构中。
2014-06-15 09:25:02 2478
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人