DevCon for OS/2 - Developer Connection |
Operating systems: ArcaOS, eComStation, IBM OS/2 Warp |
![]()
|
|
Development of SMP-safe applications and multi-thread applications are different things.
Start from reading SMP.INF
Useful articles
FAQ
Q1: What is the difference between _beginthread and DosCreatThread? When using the _beginthread and _endthread functions, you must specify the /Gm+ compiler option to use the multithread libraries. An alternative to this function is the OS/2 DosCreateThread API. If you use DosCreateThread, you must also use a #pragma handler statement for the thread function to ensure proper C exception handling. You should also call the _fpreset function at the start of the thread to preset the 387 control status word correctly. Using DosCreateThread requires that you use _endthread to terminate the thread.
Q2: How to create SMP-safe application?
Q3: How to organize SMP-safe write to file? volatile int InStatusLine = 0; // Use __lxchg to implement fast-RAM semaphores to serialize access // to a critical resource (so that only one thread can use it at a time). while (__lxchg(&InStatusLine, 1)) { DosSleep(1); } // write to file here // restore the value __lxchg(&InStatusLine, 0);
Q4: Maximal quantity of threads? |
|
||
ArcaOS 5.1.1 whatsnew - PNG iconsPNG icons on Desktop PNG icons on Desktop. (instead of ancient .ico designed in 1994) |
![]()
FOC file selectoreCo Software have created File Open Container - modern dialog to open/select files. |
// надо на ENG!!
![]()
Buy OS/2 application:
PM Backup Suite
(incremental data backup)
|
Warpstock Europe 2016Interview with Keith ..
|