On 2/23/07, Axel Dörfler <axeld@xxxxxxxxxxxxxxxx> wrote:
Aren't you contradicting yourself there a bit? :-) Anyway, I wasn't used to multi-threaded programming at all, and had no problems adopting the Be API. I liked it very much from the beginning on, though it's much easier if you learn the basic guidelines for multi -threaded programming before; it's not that complex once you understand it :-)
Indeed, my experience is similar. Plus the reality is that multi-threading is a necessity for any serious application programmer. Users won't tolerate applications that lock up during long operations, windows that affect each other's operation, etc. Plus with most modern CPUs having dual-cores you are literally wasting your computing resources by not using multiple threads. The BeOS design and API essentially force you to use multiple threads even if you aren't planning to. In most cases this isn't an issue, and BAutoLock solves most of the other problems. But I won't argue that it is easy solving deadlocks or other multi-threaded bugs. These have caused me many a cursing session at times. But most can be diagnosed and solved by relaxing, taking a step back and thinking logically. Books on multi-threaded programming can help on this. I took a course in college on Java threading and still have the book to refer to when needed :) Ryan