MarshalByRefObject.MemberwiseClone(Boolean) 메서드

정의

현재 MarshalByRefObject 개체의 단순 복사본을 만듭니다.Creates a shallow copy of the current MarshalByRefObject object.

protected:
 MarshalByRefObject ^ MemberwiseClone(bool cloneIdentity);
protected MarshalByRefObject MemberwiseClone (bool cloneIdentity);
override this.MemberwiseClone : bool -> MarshalByRefObject
Protected Function MemberwiseClone (cloneIdentity As Boolean) As MarshalByRefObject

매개 변수

cloneIdentity
Boolean

false이면 현재 MarshalByRefObject 개체의 ID를 삭제하여 개체가 원격 경계를 넘어 마샬링될 때 개체에 새 ID가 할당됩니다.false to delete the current MarshalByRefObject object's identity, which will cause the object to be assigned a new identity when it is marshaled across a remoting boundary. 대개 false 값이 적합합니다.A value of false is usually appropriate. true이면 현재 MarshalByRefObject 개체의 ID를 복제본으로 복사하여 원격 클라이언트 호출이 원격 서버 개체로 라우팅됩니다.true to copy the current MarshalByRefObject object's identity to its clone, which will cause remoting client calls to be routed to the remote server object.

반환

MarshalByRefObject 개체의 단순 복사본입니다.A shallow copy of the current MarshalByRefObject object.

설명

합니다 MemberwiseClone(Boolean) 메서드는 새 단순 복사본을 만듭니다 MarshalByRefObject 개체를 현재 비정적 필드를 복사 하는 다음 MarshalByRefObject 개체를 새 개체입니다.The MemberwiseClone(Boolean) method creates a shallow copy by creating a new MarshalByRefObject object, and then copying the nonstatic fields of the current MarshalByRefObject object to the new object. 필드 값 형식이 면 필드를 비트 단위로 복사가 수행 됩니다.If a field is a value type, a bit-by-bit copy of the field is performed. 필드 참조 형식이 면 참조가 복사 되 고 이지만 참조 된 개체는 없습니다. 따라서 원래 개체 및 해당 복제본 같은 개체를 참조 하세요.If a field is a reference type, the reference is copied but the referred object is not; therefore, the original object and its clone refer to the same object.

예를 들어 한 MarshalByRefObject 는 개체 및 개체 B를 참조 하는 X를 호출 하는 개체 참조 합니다. 3. 개체 X의 단순 복사본을 만들고 개체 A 및 B를 참조 하는 새 개체 X2 반면, X의 전체 복사본을 A2 및 B2, A의 복사본 인 새 개체를 참조 하는 새 개체 X2 만들고 B. B2 참조 합니다. 3. 사용 하 여 구현 하는 클래스 복사본 인 새 개체 C2를 ICloneable 전체 또는 단순 c를 수행 하는 인터페이스 개체의 프 합니다.For example, consider a MarshalByRefObject object called X that references objects A and B. Object B, in turn, references object C. A shallow copy of X creates new object X2 that also references objects A and B. In contrast, a deep copy of X creates a new object X2 that references the new objects A2 and B2, which are copies of A and B. B2, in turn, references the new object C2, which is a copy C. Use a class that implements the ICloneable interface to perform a deep or shallow copy of an object.

id를 MarshalByRefObject 개체는 원격 클라이언트 호출의 대상이 되는 원격 서버 개체로 정의 됩니다.The identity of a MarshalByRefObject object is defined as the remote server object that is the target of a remoting client call. 기본적으로의 멤버 수준 복제본을 MarshalByRefObject 개체에 없는 일반적으로 클라이언트 쪽 원격 경계를 넘어 마샬링되는 서버 쪽 개체의 복제본에 대 한 올바른 동작을 원래 개체와 동일한 id입니다.By default, the memberwise clone of a MarshalByRefObject object has the same identity as the original object, which is typically not the correct behavior for clones of server-side objects that are marshaled across a remoting boundary to the client side. 지정할 false에 복제본의 id를 삭제 하는 복제 원격 경계를 넘어 마샬링될 때 할당할 새 id를 일반적으로 적절 한 또는 true 원래id를유지하도록복제본을MarshalByRefObject 개체입니다.Specify false, which is usually appropriate, to delete the identity of the clone and cause a new identity to be assigned when the clone is marshaled across a remoting boundary, or true to cause the clone to retain the identity of the original MarshalByRefObject object. MemberwiseClone(Boolean) 메서드가 원격 서버 개체를 구현 하는 개발자가 사용 하기에 적합 합니다.The MemberwiseClone(Boolean) method is intended to be used by developers implementing remote server objects.

적용 대상