diff options
author | CasperW | 2009-11-27 18:29:03 +0100 |
---|---|---|
committer | CasperW | 2009-11-30 21:17:15 +0100 |
commit | 9888f95068373f1bfdb289e85560a7d873d22696 (patch) | |
tree | 406867a636ba643eb91d7af860a8b01b73e11a51 /OpenSim/Region/ScriptEngine/Shared/Api | |
parent | Merge branch 'master' into careminster (diff) | |
download | opensim-SC-9888f95068373f1bfdb289e85560a7d873d22696.zip opensim-SC-9888f95068373f1bfdb289e85560a7d873d22696.tar.gz opensim-SC-9888f95068373f1bfdb289e85560a7d873d22696.tar.bz2 opensim-SC-9888f95068373f1bfdb289e85560a7d873d22696.tar.xz |
Convert multiple lock()s which directly hinder script performance in linksets to ReaderWriterLockSlim.
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index ec771e3..267928b 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -2950,8 +2950,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2950 | return m_host.OwnerID.ToString(); | 2950 | return m_host.OwnerID.ToString(); |
2951 | } | 2951 | } |
2952 | 2952 | ||
2953 | [DebuggerNonUserCode] | ||
2953 | public void llInstantMessage(string user, string message) | 2954 | public void llInstantMessage(string user, string message) |
2954 | { | 2955 | { |
2956 | UUID result; | ||
2957 | if (!UUID.TryParse(user, out result)) | ||
2958 | { | ||
2959 | throw new Exception(String.Format("An invalid key of '{0} was passed to llInstantMessage", user)); | ||
2960 | return; | ||
2961 | } | ||
2962 | |||
2963 | |||
2955 | m_host.AddScriptLPS(1); | 2964 | m_host.AddScriptLPS(1); |
2956 | 2965 | ||
2957 | // We may be able to use ClientView.SendInstantMessage here, but we need a client instance. | 2966 | // We may be able to use ClientView.SendInstantMessage here, but we need a client instance. |
@@ -2966,7 +2975,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2966 | UUID friendTransactionID = UUID.Random(); | 2975 | UUID friendTransactionID = UUID.Random(); |
2967 | 2976 | ||
2968 | //m_pendingFriendRequests.Add(friendTransactionID, fromAgentID); | 2977 | //m_pendingFriendRequests.Add(friendTransactionID, fromAgentID); |
2969 | 2978 | ||
2970 | GridInstantMessage msg = new GridInstantMessage(); | 2979 | GridInstantMessage msg = new GridInstantMessage(); |
2971 | msg.fromAgentID = new Guid(m_host.UUID.ToString()); // fromAgentID.Guid; | 2980 | msg.fromAgentID = new Guid(m_host.UUID.ToString()); // fromAgentID.Guid; |
2972 | msg.toAgentID = new Guid(user); // toAgentID.Guid; | 2981 | msg.toAgentID = new Guid(user); // toAgentID.Guid; |