witam,
piszę rodzaj monitora do synchronizacji dostępu do sektorów krytycznych i mam pewien problem:
mianowicie chciałem aby użytkownik podawał obiekt do wstawienia i żeby ten obiekt był wstawiany do listy w moim monitorze. Podczas próby odpalenia zamieszczonego poniżej kodu program się wysypuje, nie wyskakują żadne błędy ani warningi.
template <class monitorClass>
class Monitor
{
protected:
ConditionVariable full;
ConditionVariable isEmpty;
monitorClass* objectList;
int firstEmpty,monitorSize;
public:
Monitor(int monitorSize)
{
this->monitorSize = monitorSize;
this->firstEmpty = 0;
objectList = new monitorClass[monitorSize];
}
void insertElem(monitorClass* elem)
{
objectList[firstEmpty] = *elem;
}
monitorClass removeElem()
{
}
bool fullMonitor()
{
if(firstEmpty >= monitorSize)
{
return 1;
}
return 0;
}
};
int main()
{
Monitor<int> mon(2);
int* a;
a=(int*)3;
mon.insertElem(a);
return 0;
}