For 2021 - online Python 3 training - see ((here)).
Our plans were to retire in summer 2020 and see the world, but Coronavirus has lead us into a lot of lockdown programming in Python 3 and PHP 7.
We can now offer tailored online training - small groups, real tutors - works really well for groups of 4 to 14 delegates. Anywhere in the world; course language English.
Please ask about private 'maintenance' training for Python 2, Tcl, Perl, PHP, Lua, etc.
Dripping taps, Java threads and the single thread model
Have you ever lain awake at night and listened to dripping taps. "drip, drip, drip" ... until you eventually fall asleep? With one tap, it's rhythmic, but with two taps the two rhythms get intertwined, and result in an apparently patternless racket. If only one tap would wait for the other, it would sound so much better!
With Java threads - that's where you have several program streams running within the same program - you have a very powerful facility, but also a need co-ordinate when you get to points where a shared resource needs to be used, and that's where you use Java's synchronized
keyword, and you synchronise based on an object.
Threads and synchronisation are used within Tomcat to handle multiple connections at the same time, and they're used very effectively and hidden from the programmer / Java developer. But the Java developer does need to bear in mind that there may be several user all in his code at the same time, and if there's a danger of such users interfering with each other he should consider the single thread model
for his Servlet. In a nutshell, this holds each user of his application at the starting gate until the previous user has completed - it reduces the maximum possible throughput, but on a quiet to medium application, it can make the coding and testing very much easier!
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articlesJ804 - Java - Threads 
Doing several things at the same time - Java threads - (2010-11-10)
Some other Articles
Past Delegate Offer - Summer Holiday / Weekend BreakIf nothing, make it nothing.Global Index to help you find resourcesKeyboard reading in Perl - character by character not line by lineDripping taps, Java threads and the single thread modelTcl/Tk - why does the canvas widget use a display list?MySQL server replicationMonitoring and Tuning your MySQL installationA beautiful coastlineNorth Antrim Coast - a jewel thats well worth a visit
4759 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page
This is a page archived from The Horse's Mouth at
the diary and writings of Graham Ellis.
Every attempt was made to provide current information at the time the
page was written, but things do move forward in our business - new software
releases, price changes, new techniques. Please check back via
our main site for current courses,
prices, versions, etc - any mention of a price in "The Horse's Mouth"
cannot be taken as an offer to supply at that price.
Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).