类中进行使用
private struct ServiceDescriptorCacheItem{}
在此结构中,可以看到具有两个字段**_item属性和一个_items集合属性,_item属性代表相同注册服务的第一个...ServiceDescriptor集合
此结构中的Last和Count分别是获取缓存的最后一个元素和数量,因为第一个ServiceDescriptor是**_item属性,所以这两个属性都考虑了...,如果未被缓存就调用CreateCallSite()进行创建
当前函数中有一个CallSiteChain类型,这个类型是一个限制,应该是为了防止多线程,在创建之前进行了判断,如果已创建,则抛出异常,...()中递归调用GetCallSite()获取每一个参数对应的ServiceCallSite,在方法中可以看到如果从GetCallSite()中未获取到对应的实例对象但是该参数具有默认参数,那么就使用默认参数...类中还具有一个Add(),这个方法是往**_callSiteCache**字段添加缓存ServiceCallSite
public void Add(Type type, ServiceCallSite