亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? table.c

?? state machine working with rtos
?? C
字號:
/****************************************************************************** Product: QDPP example* Version: Compatible with QF/C 3.1.yy* Updated: Jan 29, 2006** Copyright (C) 2002-2006 Quantum Leaps, LLC. All rights reserved.** This example is part of the Quantum Leaps QP/C software, and may be* distributed and modified under the terms of the GNU General Public License* version 2 (GPL) as published by the Free Software Foundation and appearing* in the file GPL.TXT included in the packaging of this file. Please note* that GPL Section 2[b] requires that all works based on this software must* also be made publicly available under the terms of the GPL ("Copyleft").** Alternatively, this software may be distributed and modified in conjunction* with a valid QP/C Quantum Leaps commercial license. Quantum Leaps* commercial licenses are designed for users who want to retain proprietary* status of their code. The users who license this software under one of* Quantum Leaps commercial licenses do not use this software under the GPL* and therefore are not subject to any of its terms.** Contact information:* Quantum Leaps Web site:  http://www.quantum-leaps.com* Quantum Leaps licensing: http://www.quantum-leaps.com/licensing* Quantum Leaps products:  http://www.quantum-leaps.com/products* e-mail:                  sales@quantum-leaps.com*****************************************************************************/#include "qf_port.h"#include "qassert.h"#include "qdpp.h"#include <stdlib.h>Q_DEFINE_THIS_FILE/* local types -------------------------------------------------------------*/typedef struct TableTag Table;struct TableTag {    QActive super_;    int fork__[N];    int isHungry__[N];};void Table_ctor(Table *me);void Table_initial(Table *me, QEvent const *e);QSTATE Table_serving(Table *me, QEvent const *e);#define RIGHT(n_) ((uint8_t)(((n_) + (N - 1)) % N))#define LEFT(n_)  ((uint8_t)(((n_) + 1) % N))enum { FREE = 0, USED = 1 };/* local objects -----------------------------------------------------------*/static Table l_table;/* Public-scope objects ----------------------------------------------------*/QActive *QDPP_table = (QActive *)&l_table;/*..........................................................................*/void tableStart(uint8_t prio,                QEvent const *qSto[], uint32_t qLen,                void *stkSto, uint32_t stkSize){    Table_ctor(&l_table);                             /* explicit Ctor call */    QActive_start((QActive *)&l_table, prio,                  qSto, qLen, stkSto, stkSize,                  (QEvent *)0);}/*..........................................................................*/void Table_ctor(Table *me) {    QActive_ctor_(&me->super_, (QState)&Table_initial);}/*..........................................................................*/void Table_initial(Table *me, QEvent const *e) {    uint8_t n;    (void)e;                               /* suppress the compiler warning */    QActive_subscribe_((QActive *)me, HUNGRY_SIG);    QActive_subscribe_((QActive *)me, DONE_SIG);    QActive_subscribe_((QActive *)me, TERMINATE_SIG);    for (n = 0; n < N; ++n) {        me->fork__[n] = FREE;        me->isHungry__[n] = 0;    }    Q_INIT(&Table_serving);}/*..........................................................................*/QSTATE Table_serving(Table *me, QEvent const *e) {    uint8_t n, m;    TableEvt *pe;    switch (e->sig) {        case HUNGRY_SIG: {            n = ((TableEvt *)e)->philNum;            Q_ASSERT(n < N && !me->isHungry__[n]);            displyPhilStat(n, "hungry  ");            m = LEFT(n);            if (me->fork__[m] == FREE && me->fork__[n] == FREE) {                me->fork__[m] = me->fork__[n] = USED;                pe = Q_NEW(TableEvt, EAT_SIG);                pe->philNum = n;                QF_publish((QEvent *)pe);                displyPhilStat(n, "eating  ");            }            else {                me->isHungry__[n] = 1;            }            return 0;        }        case DONE_SIG: {            n = ((TableEvt *)e)->philNum;            Q_ASSERT(n < N);            displyPhilStat(n, "thinking");            me->fork__[LEFT(n)] = me->fork__[n] = FREE;            m = RIGHT(n);                       /* check the right neighbor */            if (me->isHungry__[m] && me->fork__[m] == FREE) {                me->fork__[n] = me->fork__[m] = USED;                me->isHungry__[m] = 0;                pe = Q_NEW(TableEvt, EAT_SIG);                pe->philNum = m;                QF_publish((QEvent *)pe);                displyPhilStat(m, "eating  ");            }            m = LEFT(n);                         /* check the left neighbor */            n = LEFT(m);            if (me->isHungry__[m] && me->fork__[n] == FREE) {                me->fork__[m] = me->fork__[n] = USED;                me->isHungry__[m] = 0;                pe = Q_NEW(TableEvt, EAT_SIG);                pe->philNum = m;                QF_publish((QEvent *)pe);                displyPhilStat(m, "eating  ");            }            return 0;        }        case TERMINATE_SIG: {            QF_exit();            return 0;        }    }    return (QSTATE)&QHsm_top;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品国产a| 成人免费视频免费观看| 成人免费视频app| 欧美无砖专区一中文字| 国产亚洲一区字幕| 亚洲午夜久久久久久久久电影院 | 激情文学综合丁香| 91视视频在线观看入口直接观看www| 91精品欧美久久久久久动漫| 国产精品久久久久一区二区三区共 | 亚洲精品国产a久久久久久 | 午夜亚洲国产au精品一区二区| 国产成人午夜高潮毛片| 欧美日韩你懂的| 日韩码欧中文字| 国产成人精品影院| 欧美大片一区二区| 天天做天天摸天天爽国产一区| 成人av午夜影院| 国产三级精品视频| 国产精品小仙女| 欧美电影免费观看高清完整版在| 丝袜国产日韩另类美女| 欧美吞精做爰啪啪高潮| 亚洲美女电影在线| 9l国产精品久久久久麻豆| 国产亚洲欧美中文| 国产成人久久精品77777最新版本| 欧美大片国产精品| 蜜臀av亚洲一区中文字幕| 欧美日韩成人高清| 日韩在线一区二区三区| 在线不卡a资源高清| 午夜视黄欧洲亚洲| 欧美日韩一卡二卡| 亚洲国产精品久久久男人的天堂| 欧美怡红院视频| 视频一区二区国产| 欧美一区二区黄| 激情成人综合网| 久久精品男人天堂av| 国产成人免费在线观看不卡| 国产精品美女久久久久高潮| www.成人网.com| 亚洲精品视频自拍| 欧美精品1区2区3区| 日本欧洲一区二区| 久久久久久久国产精品影院| 成人免费高清在线| 一区二区三区精品视频在线| 欧美亚洲一区二区在线| 五月综合激情日本mⅴ| 精品久久久久久综合日本欧美| 国产在线视频一区二区| 欧美国产日韩在线观看| 99久久免费视频.com| 亚洲一区二区偷拍精品| 91精品国产综合久久蜜臀| 国产精品99久久久久久似苏梦涵| 中文字幕一区二区三区不卡在线 | 欧美刺激脚交jootjob| 国产一区二区0| 一区二区三区欧美| 日韩精品一区二区三区视频在线观看 | 国产三级精品三级| 在线中文字幕不卡| 精品一区二区在线观看| 亚洲三级在线免费观看| 欧美一区二区三区四区久久| 国产成人在线视频免费播放| 一区二区三区欧美| 精品av久久707| 95精品视频在线| 久久精品99国产精品| 国产精品视频在线看| 在线综合视频播放| 国产69精品久久久久毛片| 午夜视黄欧洲亚洲| 国产精品久久久久一区二区三区| 777亚洲妇女| 99久久国产综合色|国产精品| 天堂成人免费av电影一区| 国产日韩精品一区二区浪潮av| 欧美在线三级电影| 不卡的电影网站| 捆绑紧缚一区二区三区视频| 亚洲欧美国产三级| 国产欧美中文在线| 日韩欧美国产午夜精品| 一本一道久久a久久精品综合蜜臀| 久久99久久精品| 亚洲成av人影院| 亚洲人快播电影网| 日本一区二区高清| 精品99999| 91精品国产综合久久精品麻豆 | 国产iv一区二区三区| 亚洲成年人影院| 一区二区三区欧美在线观看| 中文字幕欧美区| 国产亚洲一二三区| 精品国产第一区二区三区观看体验| 在线区一区二视频| 91美女福利视频| 97超碰欧美中文字幕| 成人av在线网| 成人ar影院免费观看视频| 国产乱码一区二区三区| 国产综合久久久久久鬼色| 麻豆国产欧美一区二区三区| 午夜精品影院在线观看| 亚洲影院理伦片| 亚洲在线一区二区三区| 亚洲欧美电影一区二区| 国产精品乱码一区二三区小蝌蚪| 久久久99久久| 国产精品视频在线看| 国产精品久久久久久久久动漫| 国产精品久久午夜夜伦鲁鲁| 国产免费成人在线视频| 国产欧美一区视频| 国产日韩亚洲欧美综合| 国产精品色婷婷久久58| 国产精品欧美久久久久一区二区| 国产精品毛片大码女人| 亚洲日本va在线观看| 亚洲一区二区在线免费观看视频| 亚洲国产成人av| 久久丁香综合五月国产三级网站| 九九视频精品免费| 国产成人免费视频网站高清观看视频| 国产一区 二区 三区一级| 成人黄色a**站在线观看| 91老师片黄在线观看| 欧美性受xxxx| 日韩一区二区高清| 亚洲精品一区二区三区蜜桃下载| 久久久久久99久久久精品网站| 国产精品麻豆欧美日韩ww| 亚洲四区在线观看| 日韩专区在线视频| 国产呦精品一区二区三区网站| 国产不卡视频在线播放| 色噜噜狠狠成人网p站| 337p亚洲精品色噜噜| 久久青草国产手机看片福利盒子 | 精品国产不卡一区二区三区| 中文字幕欧美三区| 亚洲电影视频在线| 国产毛片精品一区| 在线精品视频小说1| 精品久久久影院| 亚洲另类色综合网站| 久久99久久精品欧美| 97久久超碰国产精品电影| 69av一区二区三区| 国产精品国产自产拍在线| 秋霞电影一区二区| 91亚洲精品久久久蜜桃| 欧美一级黄色片| 亚洲欧洲三级电影| 九一久久久久久| 91国产精品成人| 久久久综合激的五月天| 五月天欧美精品| 91污在线观看| 亚洲精品在线三区| 亚洲亚洲精品在线观看| 丁香婷婷综合色啪| 日韩午夜中文字幕| 亚洲小少妇裸体bbw| 成人午夜激情在线| 欧美一级午夜免费电影| 亚洲人成在线观看一区二区| 国产一区二区91| 欧美一区二区黄| 亚洲电影第三页| 91免费视频大全| 国产精品美女一区二区在线观看| 欧美aaaaaa午夜精品| 91极品美女在线| 国产精品麻豆视频| 国产福利一区在线| 欧美mv和日韩mv国产网站| 亚洲一区二区高清| 91视频精品在这里| 国产精品久久久久影视| 国产成人自拍在线| 久久婷婷成人综合色| 麻豆91在线播放免费| 欧美顶级少妇做爰| 天使萌一区二区三区免费观看| 色成人在线视频| 亚洲丝袜制服诱惑| www.亚洲激情.com| 中文字幕一区二区三区四区 | 欧美久久久一区| 亚洲国产另类av| 欧美影院精品一区| 亚洲成a人片在线观看中文|