Hi Przemek,

I was documenting some RDDI_* actions in xHarbour ChangeLog.
Just like many other RDD extensions. If someone can collect
them in one peace of documentation then it will be nice.

I've now got more time and found them in dbinfo.ch.
Well, you probably know better which one should be
thread local and app global. Looking at the list of
settings you must be right about making some or all
of them local.

[ I've found that I'm even using some of these you've
recommended long ago. But they blurred into the background
without their hb_ prefix :) now I've added them. ]

In the moment when you run thread with higher then normal priority
you can kill multitasking. To make it weel you have to know what
exactly priority modification will cause. There are three main
settings which change thread priority:
  1. The frequency of giving CPU time
  2. The length of periods with CPU time
  3. The priority in critical sections
Additionally there are also guaranties that thread will receive CPU
time and that it will be taken of in some period.
In some OSes they can be controlled separately in some other not
and here the 3-rd point above is danger sometimes. Many OSes gives
unconditionl preference to thread with higher priority so they can
practically stops all other threads execution when they have to
use common critical sections. It's also the problem how to create
Harbour API which will hide differences between OSes. Only IDLE
priority can have the same meaning in all OSes. Other will introduce
some more or less important differences.

I wouldn't make it overly complicated, as I wrote in
one of the mails, probably an IDLE, NORMAL, HIGHER
level would be enough. Of course there is the task
to tune these to give similar "feels" under different
OSes, which may be a bit of a problem, at least for
HIGHER. IDLE is similar on all platform. I'd rather
not implement TIMECRITICAL on the .prg level though.
Harbour isn't a low level language, and with this
level, it's easy to mess things up, even unintentionally.

Brgds,
Viktor

_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to