Style updates.
This commit is contained in:
@@ -140,8 +140,39 @@ void BCTransmitter::onUpdateValue( BCValuePtrConst valuePtr)
|
||||
// Das klappt aber nur in der hier gewählten Konstellation mit einer Parent-Thread
|
||||
// und einem Worker.
|
||||
|
||||
// Wir benutzen doch eine zusätzliche Queue, um erkennen zu können, ob der
|
||||
// der aktuelle Auftragsblock abgearbeit wurde.
|
||||
|
||||
_valueQueue.enqueue( valuePtr );
|
||||
qDebug() << " # #### ENQ: " <<_valueQueue.size();
|
||||
|
||||
// Wir schicken den event gleich wieder weiter ...
|
||||
QMetaObject::invokeMethod(this, "onProcessValue", Qt::QueuedConnection);
|
||||
}
|
||||
|
||||
void BCTransmitter::onProcessValue()
|
||||
{
|
||||
while (true)
|
||||
{
|
||||
BCValuePtrConst valuePtr{};
|
||||
{
|
||||
//QMutexLocker locker(&_mutex);
|
||||
if (_valueQueue.isEmpty())
|
||||
{
|
||||
//_isBusy = false;
|
||||
qDebug() << " --- XXXXXXXXXX Warum so oft?";
|
||||
emit valueQueueEmpty();
|
||||
break; // Schleife verlassen, warten auf neue Events
|
||||
}
|
||||
valuePtr =_valueQueue.dequeue();
|
||||
qDebug() << " # #### DEQ: " <<_valueQueue.size();
|
||||
} // Mutex wird hier freigegeben! WICHTIG: Execute ohne Lock!
|
||||
|
||||
// Kosmetik
|
||||
const BCValue& value = *(valuePtr.get());
|
||||
|
||||
// Kosmetik
|
||||
const BCValue& value = *(valuePtr.get());
|
||||
//const BCValue& value = *(valuePtr.get());
|
||||
|
||||
qDebug() << "------- DE.-.QUEUE: " << QThread::currentThreadId() << ": " << value.label;
|
||||
|
||||
@@ -184,12 +215,11 @@ void BCTransmitter::onUpdateValue( BCValuePtrConst valuePtr)
|
||||
// __fix
|
||||
//bc::processEventsFor(150);
|
||||
bc::delay_millis(150);
|
||||
|
||||
} // while
|
||||
|
||||
}
|
||||
|
||||
void BCTransmitter::onProcessValue()
|
||||
{}
|
||||
|
||||
|
||||
TransmitResult BCTransmitter::readByteValue( uint32_t deviceID, uint8_t registerID )
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user