?? queue.cc
字號:
/***************************************************************************
*
* Copyright (c) 1993 READY SYSTEMS CORPORATION.
*
* All rights reserved. READY SYSTEMS' source code is an unpublished
* work and the use of a copyright notice does not imply otherwise.
* This source code contains confidential, trade secret material of
* READY SYSTEMS. Any attempt or participation in deciphering, decoding,
* reverse engineering or in any way altering the source code is
* strictly prohibited, unless the prior written consent of
* READY SYSTEMS is obtained.
*
*
* Module Name: queue.cc
*
* Identification: @(#) 1.5 queue.cc
*
* Date: 5/3/93 14:57:26
*
****************************************************************************
*/
#include "queue.h"
Queue::Queue (unsigned count, int pend_order, int id)
{
int err;
if (id == -1)
qid = sc_qecreate (id, count, pend_order, &err);
else {
sc_qecreate (id, count, pend_order, &err);
qid = id;
}
}
Queue::~Queue ()
{
int err;
sc_qdelete (qid, 1, &err);
}
int
Queue::receive (void *&message, unsigned long timeout)
{
int err;
message = sc_qpend (qid, timeout, &err);
return err == RET_OK;
}
int
Queue::send (void *message)
{
int err;
sc_qpost (qid, (char *) message, &err);
return err == RET_OK;
}
int
Queue::jam (void *message)
{
int err;
sc_qjam (qid, (char *) message, &err);
return err == RET_OK;
}
void
Queue::broadcast (void *message)
{
int err;
sc_qbrdcst (qid, (char *) message, &err);
}
int
Queue::count ()
{
int err, count;
(void) sc_qinquiry (qid, &count, &err);
return count;
}
int
Queue::id ()
{
return qid;
}
int
Queue::first (void *&message)
{
int err, count;
message = sc_qinquiry (qid, &count, &err);
return err == RET_OK;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -