本课程设计的目的是通过设计一个消费者进程与生产者进程的同步模拟系统,认识进程间的同步机制生产者消费者问题是一个著名的进程同步问题。
(1) 有一群生产者进程在生产消息,并将消息提供给消费者进程去消费。
为使生产者进程和消费者进程能并发执行,在它们之间设置了一个具有n个缓冲区的缓冲池,生产者进程可将它所生产的消息放入一个缓冲区中,消费者进程可从一个缓冲区中取得一个消息消费。
(2) 尽管所有的生产者进程和消费者进程都以异步方式运行,但它们之间必须保持同步,即不允许消费进程者到一个空缓冲区去取消息,也不允许生产者进程向一个已装有消息且尚未被取走消息的缓冲区中投放消息。
(3) 任何时刻只能有一个进程可对共享缓冲区进行操作这是一个用Eclipse为工具、java为编程语言而实现模拟消费者进程与生产者进程的同步。
1
2019年最新的全国行政区划省市区县级别,矢量数据(shp格式)。
已将2019年变更的行政区划进行更新,方便大家下载使用。
数据属性齐全,属性表中数据的名称均有,属性名称没有乱码。
亲测可以使用。
2025/5/4 17:43:54 70.05MB 矢量数据 shp GIS数据 全国行政区划
1
数据结构:每个进程有一个进程控制块(PCB)表示。
进程控制块可以包含如下信息:进程类型标号、进程系统号、进程状态(本程序未用)、进程产品(字符)、进程链指针等等。
系统开辟了一个缓冲区,大小由buffersize指定。
程序中有三个链队列,一个链表。
一个就绪队列(ready),两个等待队列:生产者等待队列(producer);
消费者队列(consumer)。
一个链表(over),用于收集已经运行结束的进程本程序通过函数模拟信号量的原子操作。
算法的文字描述:①由用户指定要产生的进程及其类别,存入进入就绪队列。
②调度程序从就绪队列中提取一个就绪进程运行。
如果申请的资源不存在则进入响应的等待队列,调度程序调度就绪队列中的下一个进程。
进程运行结束时,会检查对应的等待队列,激活队列中的进程进入就绪队列。
运行结束的进程进入over链表。
重复这一过程直至就绪队列为空。
③程序询问是否要继续?如果要转直①开始执行,否则退出程序。
2025/5/4 6:57:29 18KB 操作系统 c
1
企业一直以来都很担忧有人生产假冒他的产品。
技术无所不在,并且迅速发展。
因此,欺诈者构建副本并将其售卖给全无戒心的顾客变得容易得多。
并且产品随附的文书工作也很容易复制,进而提升了这些假冒产品的真实性。
这类情况不仅仅会给既有品牌造成财务损失,还会造成永久性的名誉损失。
数字孪生和区块链可以为我们提供解决方案,以阻止这类欺诈行为,并协助企业维系其产品的真实性。
到2020年,物联网设备的数量将超过两百亿。
这些设备将能够支持数百万的数字孪生。
数字孪生将构成物理对象数字化的基本支柱之一。
而另一方面,区块链技术以及去中心化架构将带来透明性,进而进一步加强数字数据的安全性。
2025/4/29 3:54:30 1.13MB 数字孪生 区块链
1
计算机实时阴影是现代计算机图形学中的一个重要领域,尤其在游戏开发和游戏引擎设计中起着至关重要的作用。
本文将深入探讨这一主题,介绍阴影的基本概念、常见算法以及它们在实际应用中的优缺点。
我们要理解阴影在计算机图形中的意义。
在现实世界中,阴影是由光源照射物体产生的暗区,它提供了场景深度和形状的重要视觉线索。
在计算机图形中,实时阴影的生成是为了模拟这一现象,使虚拟环境更加逼真。
然而,由于计算资源的限制,实时生成高质量阴影是一项具有挑战性的任务。
实时阴影算法大致可以分为两类:基于像素的阴影(Pixel-BasedShadow)和基于几何的阴影(Geometry-BasedShadow)。
基于像素的阴影算法如贴图阴影(ShadowMapping)是最常见的方法,它通过为光源创建一个深度纹理,并将其应用到场景的每个像素上,来确定该像素是否处于阴影中。
这种方法简单且易于实现,但可能会出现阴影断裂和锯齿状边缘等问题。
几何基
2025/4/28 22:16:05 44.33MB 实时阴影
1
世界区域大全,包括各大洲、国家、大区、市县等行政区划,sql文件,适用各种数据库,直接执行sql文件即可插入数据库
2025/4/28 4:20:23 832KB 世界 区域 行政区划 数据库
1
很经典的MFC教程。
目录译者序前言第一部分基础知识第1章窗口21.1窗口和API环境21.1.1三种类型窗口21.1.2客户区和非客户区31.2窗口和MFC环境41.3怎样应用MFC创建一个窗口51.4怎样使用MFC销毁一个窗口91.4.1捆绑到一个已有的窗口91.4.2窗口类101.4.3窗口进程101.5怎样使用MFC创建一个窗口类111.5.1使用AfxRegisterWndClass()函数注册一个窗口类111.5.2使用AfxRegisterClass()函数创建一个窗口类121.6怎样销毁一个MFC窗口类141.7厂商安装的窗口类141.8其他类型窗口151.9桌面窗口161.10小结16第2章类182.1基类182.1.1CObject182.1.2CCmdTarget192.1.3CWnd192.2应用程序、框架、文档和视图类192.2.1CWinApp(O/C/W)202.2.2CView(O/C/W)212.3其他用户界面类222.3.1通用控件类232.3.2菜单类232.3.3对话框类242.3.4控制条类242.3.5属性类252.4绘图类252.4.1设备环境类252.4.2图形对象类252.5文件类262.6数据库类262.6.1ODBC类262.6.2DAO类272.7数据集类272.8其他数据类272.9通信类282.10其他类292.11小结31第3章消息处理323.1发送或寄送一个消息323.1.1发送一个消息323.1.2寄送一个消息323.1.3发送一个消息与寄送一个消息的比较323.2怎样使用MFC发送一个消息333.3怎样用MFC寄送一个消息333.4三种类型的消息343.4.1窗口消息343.4.2命令消息343.4.3控件通知343.5MFC怎样接收一个寄送的消息363.6MFC怎样处理一个接收到的消息363.7处理用户界面的对象443.8创建自定义窗口消息453.8.1静态分配的窗口消息453.8.2动态分配的窗口消息463.9重定向消息473.9.1子分类和超分类473.9.2用MFC子分类窗口483.9.3重载OnCmdMsg()493.9.4使用SetWindowsHookEx()493.9.5使用SetCapture()493.9.6专有的消息泵503.10小结50第4章绘图514.1设备环境514.2在MFC环境中创建一个设备环境524.2.1屏幕524.2.2打印机534.2.3内存544.2.4信息544.3绘图例程554.3.1画点554.3.2画线554.3.3画形状554.3.4形状填充和翻转554.3.5滚动564.3.6绘制文本564.3.7绘制位图和图标564.4绘图属性564.4.1设备环境属性574.4.2画线属性584.4.3形状填充属性584.4.4文本绘制属性584.4.5映像模式594.4.6调色板属性624.4.7混合属性624.4.8剪裁属性634.4.9位图绘制属性644.5元文件和路径654.5.1元文件654.5.2路径664.6颜色和调色板664.6.1抖动色674.6.2未经抖动色674.6.3系统调色板674.6.4使用系统调色板684.6.5动画色714.7控制什么时候在哪里绘图714.7.1处理WM_PAINT714.7.2只绘制被无效化的区域724.7.3
2025/4/28 1:49:48 16.44MB MFC
1
全国省市区地址,挺全的,不坑人的,好不好用试试才知道
17.11MB 省市区
1
在进行机载LiDAR数据预处理时,需要准备:1、解算软件:LiDARSurvey-UIAP;
2、该架次的轨迹数据,即POS解算输出的*.out文件;
3、检校场的对飞航线和同向航线数据。
一、打开解算软件,建立解算工程。
项目→创建工作区,设置建立工程的路径、名称,接着设置原始数据路径、输出结算后的数据路径、轨迹文件路径。
2025/4/26 3:41:23 1.02MB LiDAR数据预处理流程
1
第1章前台本网站的前台主要实现的网络在线考试及成绩查询等功能。
1.1注册想要进行在线考试必须先登录,如果您是新用户需要先进行注册,以获取登录密码,单击登录页面中的“注册”按钮,进入“学生注册信息”页面。
在此页面中填写完整的注册信息,单击“注册”按钮,完成注册操作。
注意:如果忘记密码可以通过密码问题及问题答案来找回密码。
1.2在线考试在线考试的操作步骤如下:(1)进入登录页面,在学生证号、密码及验证码处填写正确的登录信息,单击“登录”按钮,进入前台在线考试的主页面,学号:0000000000000001,密码:25175。
(2)阅读完考生规则后,单击“开始”按钮,进入选择考试套题页面。
(3)在此页面中选择考试课程及相应的套题名称,单击“同意”按钮,进入准备考试页面。
(4)单击“开始”按钮,进入考试页面。
(5)考试时间为20分钟,20分钟后如果不交卷,自统自动提交考卷。
单击“交卷”按钮,下面将显示您的考试成绩。
(6)单击“退出当前系统”按钮,完成本次在线考试。
1.3成绩查询登录成功后,在此页面的右上方单击“查询成绩”按钮,进入查询页面。
在此页面中考生不但可以查看自己的考试成绩,还可以查看其他考生的成绩。
在查询条件处选择相应的查询条件,并输入查询关键字,单击“查询”按钮,下方列表栏中显示查询结果。
第2章后台在登录页面中的“学生证号”处输入管理员用户名“25175”,在密码处输入“25175”,填写正确的验证码,并勾选“管理员登录”复选框,单击“登录”按钮,后台主要包括:管理员、管理注册学生、管理课程信息、管理套题信息、管理考生成绩、管理考试题目、添加试题。
其中管理员、管理注册学生、管理课程信息、管理套题信息、管理考生成绩、管理考试题目的操作方法相同,下面以管理员为例,讲解其操作方法。
在功能导航区中单击“管理员”按钮。
此页面主要实现添加、修改、删除、查询管理员信息等功能。
管理员页面的操作方法如下:(1)添加管理员。
单击“添加管理员”按钮,在管理员名称及管理员密码处填写管理员名称及密码,然后单击“添加”按钮,完成添加操作。
(2)修改。
单击“修改”按钮,在此页面中可对管理员的名称及密码进行修改,修改完成后,单击“修改”按钮,完成修改操作。
(3)删除。
单击“删除”按钮,即可删除该条管理员信息。
(4)查询。
在查询条件处选择相应的查询条件并输入相对应的关键字,单击“查询”按钮,下方显示查询结果,完成查询操作。
在功能导航区中单击“添加试题”按钮,进入如图2.6所示的页面,在此页面中选择要添加的试题的所属专业、课程主套题名称。
单击“选择”按钮,在此页面中填写完整的试题信息,单击“添加”按钮,完成添加操作。
2025/4/24 12:43:29 1.69MB 在线考试源码
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡