on 12-13-2010 10:23 AM
Hi I would like to understand how the BLS works.
Is the BLS runs sequential or concurrently?
For example a BLS is still running, and this BLS is being called again. Will MII create a new thread for theBLS or MII will wait for the first-same BLS to finish up and start the BLS again????
thanks
New thread.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I will talk to our NW administrator regarding to this topic
Edited by: Seng Kiang Hoe on Dec 20, 2010 10:02 AM
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Well I have found out very interesting insight. Based on this forum thread I have asked
I tested in detail to see how transactions threads really work.
-When a main transaction is running, the scheduler will not start the transaction again untill the previous transaction is done/finished/stop. The next transaction starts on the next scheduled interval. The reason is that main transaction is running synchronous mode.
If you need to run a transaction parallely, you need to schedule more than one scheduler to point to the same transactions. The other possibility is to call this transaction as sub-transaction. The main transaction can call the sub-transaction asychronous and spawn new tread when the main transaction finished. The problem that I see is when I call subtransaction ayschnronously, the sub-transaction stays running. Do not know why.
I think the new thread is created when you make the asynchronous call, not when the calling transaction finishes. Once a transaction is called asynchronously it runs independently of the calling transaction. And think carefully about when an asynchronous call is made and what objects are being processed. You can very easily find yourself in a table locking situation.
I welcome more technically oriented folks to comment as I based my comments on observation of behavior, not indepth development knowledge.
A common use of an asynchronous call is for logging messages. The messages are not critical to the main processing flow and performance is not dependent upon the logging transaction.
Regards,
Mike
User | Count |
---|---|
8 | |
4 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.