Hi,
Inside of the SEGGER emwin Library is a locking funktion wich
takes care of being used by different threads. These locks are using
a single binary semaphore. The pseudocode for the lock is something
like:
if (entrancecount == 0)
{
osSemaphoreWait(guisem, osWaitForever);
taskidlock = osGetThreadId();
}
else
{
if (taskidlock != osGetThreadId())
{
osSemaphoreWait(guisem, osWaitForever);
taskidlock = osGetThreadId();
}
}
This seems to be OK, bu
↧