98 Commits

Author SHA1 Message Date
UbitUmarov
c0a2569b32 in fact there is no thread.abort 2024-04-11 04:29:01 +01:00
UbitUmarov
c981f3c448 avoid a possible null ref 2024-04-11 02:42:05 +01:00
UbitUmarov
79ac5c7f54 remove some obsolete code 2023-11-29 12:17:08 +00:00
UbitUmarov
bd2ea28ede missing change 2023-03-07 14:36:13 +00:00
UbitUmarov
ec39f85a7a cosmetics 2023-03-07 14:33:42 +00:00
UbitUmarov
ac8c69ba1a use some c#9 style sugar plus cosmetics 2022-10-03 14:33:20 +01:00
UbitUmarov
ea83284c87 avoid null ref 2022-10-02 23:45:57 +01:00
UbitUmarov
2346af0715 smartThreadPool changes 2022-10-02 12:03:44 +01:00
UbitUmarov
b022ae0898 cosmetics 2021-11-21 02:20:59 +00:00
UbitUmarov
a4bd8a91c5 cosmetics 2021-11-20 01:58:08 +00:00
UbitUmarov
1e4799604f add suspendflow option to workmanager startthread 2021-09-07 02:51:08 +01:00
UbitUmarov
1e1ec44707 smartthreadpool: do not start a thread before register it 2021-09-03 14:54:54 +01:00
UbitUmarov
94d1cf1205 smartthreadpool: replace its locked dictionary 2021-09-03 14:36:57 +01:00
UbitUmarov
d525286b0f smartthreadpool: do informcomleted under locks 2021-01-18 18:18:30 +00:00
UbitUmarov
1db6a541bd more changes to smartthreadpool 2021-01-13 16:23:49 +00:00
UbitUmarov
d72f19111c smartthreadpool: place a global throttle on threads creation if pool as less than min number of threads ( 20/s versus .net 1/s in all cases) 2021-01-02 12:38:25 +00:00
UbitUmarov
4b7502c1dc smartthreadpool: remove workitems priority. Its lack of fairness could cause issues hard to debug if we tried to use it (we don't) (runprebuild) 2020-12-31 14:29:36 +00:00
UbitUmarov
b61df051db smartthreadpool: suport callback delegates with no return value (WaitCallBack), use it on our fireandforget (other places later) 2020-12-31 13:04:44 +00:00
UbitUmarov
960a0fa360 smartthreadpool: add pool option SuppressFlow and test it on main smart?? pool (may go bad) 2020-12-31 02:46:38 +00:00
UbitUmarov
0389c02fd5 smartthreadpool: ofc missed the relevant file 2020-12-31 02:01:39 +00:00
UbitUmarov
923d6437b8 smartthreadpool: replace thread context code to use ExecutionContext 2020-12-31 01:57:22 +00:00
UbitUmarov
64fd819b81 still some windows code 2020-12-30 22:07:42 +00:00
UbitUmarov
09933dc589 smartthreadpool: replace custom linkedlist based quueue by .net queue 2020-12-30 14:43:52 +00:00
UbitUmarov
b667bff8bb smartthreadpool: httpcontext will be gone (we dont use it) 2020-12-30 11:53:46 +00:00
UbitUmarov
4ab792cd13 smartthreadpool: remove old windows(like CE) support, remove tabs.. (do runprebuild) 2020-12-30 11:38:18 +00:00
UbitUmarov
592b94d142 some changes on Dispose 2020-08-09 00:20:50 +01:00
Melanie Thielker
b16abc8166 Massive tab and trailing space cleanup 2017-01-05 19:07:37 +00:00
UbitUmarov
ba7904a3a8 a few more changes on potencial mem issues 2016-11-18 00:12:09 +00:00
UbitUmarov
52a80f1742 workaround potencial memory leak 2016-08-22 05:47:19 +01:00
UbitUmarov
222a5b655f workaround potencial memory leak 2016-08-22 04:13:05 +01:00
Roger Kirkman
97a471cb35 Fix crash due to setting Thread.name after thread start.
Signed-off-by: Diva Canto <diva@metaverseink.com>
2016-05-12 17:42:42 -07:00
BlueWall
96a2449122 Undo "Revert "Small changes to threading to send thread names to unmanaged threads. Needs Mono 3.6+ to see thread names in utilities like top -H . Some formatting of the thread name to fin in the 16 byte limit on Linux. Please test on Windows to see if the work has any adverse effects.""
Fix for break in next commit

This reverts commit 376fab1402.
2014-09-17 20:03:54 -04:00
BlueWall
376fab1402 Revert "Small changes to threading to send thread names to unmanaged threads. Needs Mono 3.6+ to see thread names in utilities like top -H . Some formatting of the thread name to fin in the 16 byte limit on Linux. Please test on Windows to see if the work has any adverse effects."
This reverts commit af286d5fcb.
Issue with Jenkins builds
2014-09-17 18:11:41 -04:00
BlueWall
af286d5fcb Small changes to threading to send thread names to unmanaged threads. Needs Mono 3.6+ to see thread names in utilities like top -H . Some formatting of the thread name to fin in the 16 byte limit on Linux. Please test on Windows to see if the work has any adverse effects. 2014-09-17 17:56:10 -04:00
Justin Clark-Casey (justincc)
854dcd1abd Fix SmartThreadPool line endings in recent update from dos to unix 2013-05-01 23:00:46 +01:00
Justin Clark-Casey (justincc)
81a90e30c6 Add in-code exaplanation for the change in cancellation signalling in STP 2.2.3. Remove left in Console.WriteLine accidentally inserted in recent 206fb306 2013-05-01 19:29:46 +01:00
Justin Clark-Casey (justincc)
206fb306a7 Update SmartThreadPool to latest version 2.2.3 with a major and minor change.
SmartThreadPool code comes from http://www.codeproject.com/Articles/7933/Smart-Thread-Pool
This version implements thread abort (via WorkItem.Cancel(true)), threadpool naming, max thread stack, etc. so we no longer need to manually patch those.
However, two changes have been made to stock 2.2.3.
Major change: WorkItem.Cancel(bool abortExecution) in our version does not succeed if the work item was in progress and thread abort was not specified.
This is to match previous behaviour where we handle co-operative termination via another mechanism rather than checking WorkItem.IsCanceled.
Minor change: Did not add STP's StopWatch implementation as this is only used WinCE and Silverlight and causes a build clash with System.Diagnostics.StopWatch
The reason for updating is to see if this improves http://opensimulator.org/mantis/view.php?id=6557 and http://opensimulator.org/mantis/view.php?id=6586
2013-05-01 19:01:43 +01:00
Justin Clark-Casey (justincc)
1f1da23097 Bump version and assembly version numbers from 0.7.5 to 0.7.6
This is mostly Bluewall's work but I am also bumping the general version number
OpenSimulator 0.7.5 remains in the release candidate stage.
I'm doing this because master is significantly adding things that will not be in 0.7.5
This update should not cause issues with existing external binary DLLs because our DLLs do not have strong names
and so the exact version match requirement is not in force.
2013-02-05 00:23:17 +00:00
Oren Hurvitz
b77da5039e Assign the SmartThreadPool name in the constructor
This is required because some threads are created in the constructor, so assigning the name afterwards would be too late.
2013-01-19 02:08:58 +00:00
Diva Canto
e4cb7af98a Updated all existing AssemblyVersions's to 0.7.5.*. Many DLLs still don't have an AssemblyInfo file. 2012-11-13 19:26:43 -08:00
John Hurliman
2f394b7e7e * Allow SmartThreadPool to be initialized without setting max stack size (like the original implementation)
* Only initialize Util's SmartThreadPool if it is actually being used
* No longer initializing Util's SmartThreadPool with a custom max stack size. From MSDN: "Avoid using this constructor overload. The default stack size used by the Thread(ThreadStart) constructor overload is the recommended stack size for threads."
2009-10-22 01:30:12 -07:00
lbsa71
5af465a364 * Changed all AssemblyInfo to explicit version 1.0.0.0 to not confuse poor poor Nant. We probably should take the opportunity to let the non-module bins reside in their /bin/Debug dirs later. 2009-02-19 14:51:33 +00:00
Mike Mazur
fefe0ff3d9 Removing contents of ThirdParty/3Di. The load balancer can now be found
at http://forge.opensimulator.org/gf/project/loadbalancer/

config key: svn.rmdir
2009-01-28 01:56:04 +00:00
Justin Clarke Casey
18ba6c3510 * minor: A few tiny bits of documentation and log message cleanup before starting something different 2008-12-01 20:28:00 +00:00
lbsa71
8388fe0669 * some if inversions and added {}'s for readability 2008-09-08 14:30:35 +00:00
Teravus Ovares
7d89e12293 * This is the fabled LibOMV update with all of the libOMV types from JHurliman
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point.  Regular people should let the dust settle.
* This has been tested to work with most basic functions. However..   make sure you back up 'everything' before using this.  It's that big!  
* Essentially we're back at square 1 in the testing phase..  so lets identify things that broke.
2008-09-06 07:52:41 +00:00
Mike Mazur
c74f7387ec Correctly convert port to int. 2008-08-19 09:24:15 +00:00
Mike Mazur
894f3045ed Convert LoadBalancer and RegionProxy plugins to use XML manifests. Fixes
"Plugin Error: Node 'Type' not allowed" messages during region server startup.
2008-08-19 09:24:12 +00:00
Melanie Thielker
eaff580abe Patch #9160
Refactor proxy encode/decode methods out of the PacketPool into
their own class.
2008-08-08 11:04:24 +00:00
Mike Mazur
15669281fa Apply updated patch from issue 1871. Thanks sempuki. 2008-07-31 23:53:24 +00:00