CPN Tools学习——时间和队列【重要】

-Timed Color Sets 时间颜色集

-Token Stamps 令牌时间戳

-Event Clock 全局/事件/模拟时钟

-Time Delays on Transitions过渡的时间延迟

- List Color Set列表颜色集

- Queue排队

1.时间颜色集

在定时CPN模型令牌中有:

(1)象征性的颜色

(2)时间戳:时间戳是一个非负整数.

句法:1`e@+表达式

示例:

(1)1`A@+5:表示这个令牌A将在时间5可用以启用转换

(2)多重令牌:1`A@+2++1`B@+5,表示A将在时间2可用以启用转换,B在时间5可用。中间两个++是用于多集的符号。

(3)1`(A,B)@+20,表示有序对在时间20可用

系统有一个表示模型时间的全局(事件)时钟。当全局时间为0,这些都不可用.

        通过在CPN工具定义末尾添加此时间关键字timed,来设置定时颜色集。可以看到net中P1和P2的令牌都自动出现了默认的@0。因为如果不指定,CPN工具默认提供当前全局时钟0.

这个time=0就表示。全局时钟时间或事件时钟时间此时为0.

将时间延迟分配给转换T所需要:

1)选择转换(即左键单击)

2)按Tab键

3)在@+后键入延迟表达式

        这里输出的结果P3由转换T1和输出弧表达式共同决定,所以这里输出P3的时间戳等于两个地方的时间戳加起来。

        虽然执行一次后,转换T1处有10的延迟,但是当前全局时间还是保持0不变,因为T1在时间0时在P1和P2中仍然有可用的,即0时仍可以触发转换。即全局时间time等于可以出发转换T1的最早时间。

2.令牌上的时间戳

手动设置令牌上的时间戳

执行一步操作后,当前全局时间为5,P1可执行(0<=5),P2可执行(5<=5),故T1可触发,累计时间戳就是输出的时间戳。

CPN当前的全局时间time等于可以出发转换T1的最早时间

3.队伍Implementing Queues

(1)HD和TL操作

(2)列表构造函数(: :)

构造函数,它显示为这两个冒号。这个构造函数在队列的实现中发挥非常重要的作用。

  • 构造 元素::元素列表——元素列表
  • 也构造两个变量
  • 将列表分配给变量的话,是前面X分配第一个元素,后面XS分配后面剩余元素并成为列表。

(3)串联运算符(^^)

用于从两个参数列表构造一个列表,因此该运算符的左侧是一个列表,右侧也是一个列表。

实操:

定义一个时间颜色集JOB和变量j,并在两个库所使用颜色集JOB,在弧上使用变量j。在转换上设置10的延迟。

在输入库所放置一些令牌,以触发转换。

在转换处放置一个循环:

可以看到最开始全局时间time=1,因为job=1,在其他中是最早可以触发转换的。因此是当前的全局时间。

新加的颜色集是E,里面只有一个变量e,(有点没明白这样做的意义,好像是当该服务器一次可以处理一项作业,就可以设置这样的自循环)

       因为转换sever会到输出,也会到timer,由于变量e获取过来的时间是11,那么要再回到转换sever重新触发,至少也要有11.

显示此时执行一次后,当前全局时间为11,因为剩余的job2和job3可执行时间都小于11,都是可以执行的,所以这里可以进行选择,否则就是随机了。

定义列表颜色集JOBList,以及变量js,并向net中添加队列(队列的实现就是红色框内的结构)。

理解:

队列初始是空的1`[ ],串联函数js^^[j]表示添加来自左边的元素j,且都是添加在Queue的末尾的。队列的形成方式:在现有队列的尾部添加一个元素

利用构造函数j::js,是为了删除Queue中的第一个元素,从中删除第一个元素(j代表的)后,将队列的其余部分并将其放回队列中,我可以拿走这个j,并将j与此转换一起使用,然后在输出位置放置.

  它取出队列中的第一个作业来处理,然后转到队列的下一个作业中。(太像优先级队列更新啦)

此时执行的转换是FormQ,要看的是job3的可执行时间。

此时执行的转换是Sver,要看的是Timer的可执行时间。队列的更新如图所示。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1451668.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【面试干货】抽象类和接口的区别

【面试干货】抽象类和接口的区别 1、抽象类1.1、什么是抽象类&#xff1f;1.2、示例代码 2、接口2.1、什么是接口&#xff1f;2.2、示例代码 3、比较和总结3.1、使用场景3.2、关键区别3.3、代码示例比较 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&am…

【安卓设备】通过adb批量安装apk

1、adb链接设备 H:\tv\apk>adb connect 127.0.0.1:21503 2、批量安装apk 如果地址不一致需要将 H:\tv\apk\ 改成自己的路径地址&#xff0c;同时注意该命令只能安装文件名为英文的不支持中文名称&#xff0c;如果有需要先更改文件名称。 H:\tv\apk>for %f in (H:\tv\a…

VirtualBox、Centos7下安装docker后pull镜像问题

Docker安装篇(CentOS7安装)_docker 安装 centos7-CSDN博客 首先&#xff0c;安装docker可以根据这篇文章进行安装&#xff0c;安装完之后&#xff0c;我们就需要去通过docker拉取相关的服务镜像&#xff0c;然后安装相应的服务容器&#xff0c;比如我们通过docker来安装mysql,…

AI Agent学习系列:微信搭配Agent,让微信秒变特工

在之前的文章里介绍了如何把微信变成高考志愿填报小助手&#xff0c;我已经把这个bot发布到了公众号&#xff0c;大家可以直接在公众号消息输入框里提问即可直接使用&#xff0c;如图&#xff1a; 上面说的bot就是智能体&#xff0c;也叫Agent&#xff0c;和英文里特工是一个单…

【Vue】自学笔记(四)

上一篇&#xff1a;Vue笔记&#xff08;三&#xff09;-CSDN博客 1.VueCli自定义搭建项目 先确保安装了全局工具VueCli 如果没有&#xff0c;则先运行命令 npm i vue/cli -g 选择最后一个自定义搭建项目 选择需要自动搭建的功能 这里我需要router和css预处理器就空格勾选上&…

黄河流域web

1、UNSER的 <?php highlight_file(__FILE__); class Wel {public $fast;public $star;public function __construct(){$this->fast "free_toto";echo "what?";}public function __destruct(){$content $this->star;printf ($content);}pu…

使用ShinyCell展示你的单细胞数据

在我参与发表我的第一篇植物单细胞文章中&#xff0c;我用Shiny开发了一个简单的单细胞可视化网站&#xff0c;目前已经运行了5年了&#xff0c;有上万的访问&#xff0c;唯一的不足就是太简陋。我一直想着能不能找个一个更好的工具进行展示&#xff0c;最近发现了一个工具&…

Druid未授权访问漏洞修复

前言 安全组针对系统漏扫发现系统存在Druid未授权访问&#xff0c;会引发泄露系统敏感信息&#xff0c;漏洞链接为ip:端口/druid/index.html&#xff0c;可以清楚的查看数据库的相关连接信息&#xff0c;如下图所示&#xff1a; 漏洞修复 1、关闭Druid监控页面 在Druid的配…

34 Debian如何配置ELK群集

作者:网络傅老师 特别提示:未经作者允许,不得转载任何内容。违者必究! Debian如何配置ELK群集 《傅老师Debian知识库系列之34》——原创 ==前言== 傅老师Debian知识库特点: 1、拆解Debian实用技能; 2、所有操作在VMware虚拟机实测完成; 3、致力于最终形成Debian知识手…

【TB作品】MSP430 G2553 单片机 口袋板 日历 时钟 闹钟 万年历 电子时钟 秒表显示

文章目录 功能介绍操作方法部分流程图代码录制了一个演示视频可以下载观看 功能介绍 时间与日期显示&#xff1a; 实时显示当前时间&#xff08;小时、分钟、秒&#xff09;和日期&#xff08;年、月、日&#xff09;。 闹钟功能&#xff1a; 设置闹钟时间&#xff08;小时、分…

关于FPGA对 DDR4 (MT40A256M16)的读写控制 2

关于FPGA对 DDR4 &#xff08;MT40A256M16&#xff09;的读写控制 2 语言 &#xff1a;Verilg HDL EDA工具&#xff1a;ISE、Vivado、Quartus II 关于FPGA对 DDR4 &#xff08;MT40A256M16&#xff09;的读写控制 2一、引言二、DDR4的简介四、DDR4 SDRAM状态框图 关键词&#x…

高叶恋情曝光神秘素人男友浮出水面

高叶恋情曝光&#xff0c;神秘素人男友浮出水面&#xff01;在娱乐圈的璀璨星光中&#xff0c;总有一些低调而神秘的恋情&#xff0c;它们如同深藏的宝藏&#xff0c;等待着被发掘。昨日&#xff0c;知名娱乐记者刘大锤的一则爆料&#xff0c;犹如一颗重磅炸弹&#xff0c;炸响…

Go 1.19.4 字符串-Day 06

1. 编码表 计算机中只有数字&#xff08;0和1&#xff09;&#xff0c;如果有一个字符串&#xff08;字符串由字符组成&#xff09;要存储&#xff0c;在内存中该如何表达这个字符串&#xff1f; 那么所有的字符都必须数字化&#xff0c;也就是一个字符对应一个特定的数字&…

腾讯云对象存储不绑定自定义备案域名不给下载应该如何处理?

从2024年1月1日起&#xff0c;腾讯云对象存储&#xff08;COS&#xff09;将实施新政策&#xff1a;新创建的存储桶不再支持使用path-style域名&#xff08;即存储桶绝对路径&#xff09;。此外&#xff0c;使用默认域名访问的新存储桶将不再支持任意类型文件的预览&#xff0c…

Mac error:0308010C:digital envelope routines::unsupported

背景&#xff1a; node版本20.14.0 执行npm run start命令的时候报错 问题&#xff1a; error:0308010C:digital envelope routines::unsupported 分析&#xff1a; 出现这个错误是因为 node.js V17版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严…

VMware安装ubuntu22.04虚拟机超详细图文教程

一 、下载镜像 下载地址&#xff1a;Index of /ubuntu-releases/22.04.4/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 二、创建虚拟机 打开VMware点击左上角文件&#xff0c;创建新的虚拟机&#xff0c;打开后如下图&#xff1a; 下一步&#xff0c;镜像文件就是…

视频号怎么保存视频到手机?推荐4种方法!

短视频已经成为了网友们的新宠&#xff0c;那么对于我们这些普通人来说&#xff0c;如何能够轻松提取视频号上的视频呢&#xff1f;今天&#xff0c;就让我们一起来探讨一下视频号视频提取各种方法和工具&#xff01; 虽然视频号视频的保存方式多种多样&#xff0c;但为了照顾那…

【嵌入式DIY实例】-Nokia 5110显示DS18B20传感器数据

Nokia 5110显示DS18B20传感器数据 文章目录 Nokia 5110显示DS18B20传感器数据1、硬件准备2、代码实现本文将介绍如何使用 ESP8266 NodeMCU 板和 DS18B20 数字温度传感器实现简单的温度测量站。 NodeMCU 微控制器 (ESP8266EX) 从 DS18B20 传感器读取温度值,并将其打印在诺基亚 …

怎么做才能推动产业园区的数字化转型和升级

树莓集团在产业园运营中建设了产业园共同体生态模型&#xff0c;以园区作为核心载体&#xff0c;汇聚了众多优质企业&#xff0c;形成了强大的产业集群效应。这一模型通过产业汇集、资源共享和生态构建&#xff0c;为企业提供了一站式的解决方案&#xff0c;助力企业在激烈的市…

基于SpringBoot+VueBBS论坛系统设计和实现(源码+LW+调试文档+讲解等)

&#x1f497;博主介绍&#xff1a;✌全网粉丝1W,CSDN作者、博客专家、全栈领域优质创作者&#xff0c;博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f31f;文末获取源码数据库&#x1f31f; 感兴趣的可以先收藏起来&#xff0c;还…