You use Microsoft SQL Server 2012, 2014 or 2016, and you create a User-defined type (UDT) by using SQL Server common language runtime (SQL CLR) integration.
If you use the UDT as a stored procedure parameter, the parameter is passed to the server through the remote procedure call (RPC) mechanism. This mechanism internally tries to load an assembly that hosts the UDT in memory.
In this situation, you may experience decreased performance for the stored procedure execution. This occurs because of an inefficiency that's caused when the RPC loads and unloads the SQLCLR assembly unnecesarily.
This problem is manifested as long wait times for CLR_AUTO_EVENT and CMEMTHREAD types. This is especially true if multiple concurrent users are running the same stored procedure.
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.