there seems to be some overhead between SQL Server 2005 and a CLR function written in C#. Why is thi
am 27.10.2007 06:24:54 von DRthere seems to be some overhead between SQL Server 2005 and a CLR function
written in C#. Why is this?
I have a simple wraper around System.Diagnostics.Stopwatch.GetTimestamp() :
public partial class UserDefinedFunctions
{
[Microsoft.SqlServer.Server.SqlFunction]
public static long GetTimestampF()
{
return System.Diagnostics.Stopwatch.GetTimestamp();
}
};
but if i run this it is hardly accurate. the time of getting from sql server
to a CLR function seems to be relatively slow for nanosecond calculations:
DECLARE @before bigint
DECLARE @after bigint
SET @before = dbo.GetTimestampF()
-- do something
SET @after = dbo.GetTimestampF()
SELECT @after - @before as nanoseconds
is there nyway to elimitate this overhead so that dbo.GetTimestampF()
executes as fast for TSQL as it is to call GetTimestampF() in C#?
If i call my GetTimestampF() on c# it executes fast enough for the
nanosecond results to be accurate