제가 사실은 큐를 만들어서 사용해야 하는데....큐의 개념은 알고 있는데
구현할 시간이 없어서 어찌어찌 하다가 STL 예제를 보고 이렇게 쓰고 있습니다.
이렇게 사용해도 아무런 문제가 없는지 모르겠습니다.
어느분은 환형큐를 만들어서 메모리를 밀 설정해두고 사용하라구 하던데 콘트롤하기가 어려워서
큐에서 자료가 나가는시점은 쓰레드가 큐에 자료가 있으면 가저 갑니다.
메모리 문제나 그런부분에 대해서 잘몰라서 고수님은조언 부탁한다.
참고 : 통신모듈에서 사용예정 입니다.
//----------- *.h 부분 입니다.
#ifndef MainH
#define MainH
#include <queue.h>
.
.
.
struct TCommand
{
AnsiString IPADDR;
byte BYAPSS;
byte COMMAND;
byte CRC;
};
class TFrm_Main : public TForm
{
__published: // IDE-managed Components
TServerSocket *Srv_Socket;
.
.
.
public: // User declarations
TCommand Com_List; // Command struct
queue <TCommand> Com_Queue; // Queue
.
.
// ----------------unit 부분 입니다.
void __fastcall TFrm_Main::CreatCommand(AnsiString IP, byte bypass, byte command, byte crc)
{
Com_List.IPADDR = IP;
Com_List.BYAPSS = bypass;
Com_List.COMMAND = command;
Com_List.CRC = crc;
Com_Queue.push(Com_List); //큐에 입력
}
//---------------------------------------------------------------------------
void __fastcall TFrm_Main::But_OnClick(TObject *Sender)
{
Com_Queue.pop(); //큐에서 1건 삭제
}
//---------------------------------------------------------------------------
|