के साथ आर 5 संदर्भ कक्षाओं की प्रतिलिपि बनाते समय मैं एक आर 5 संदर्भ वर्ग की प्रतिलिपि बना सकता हूं जब मैंने फ़ील्ड में से किसी एक को लॉक नहीं किया है, लेकिन यदि फ़ील्ड में से कोई एक लॉक है तो यह कॉपी नहीं करता है। उदाहरण कोड निम्नानुसार है (लॉक कॉल के साथ टिप्पणी की गई)। मेरा प्रश्न: कॉपी() विधि का उपयोग कर लॉक किए गए फ़ील्ड के साथ मैं उदाहरण की प्रतिलिपि क्यों नहीं बना सकता?लॉक वैरिएबल
example <- setRefClass('example',
fields = list(
count = 'numeric',
data = 'data.frame',
d.accessor = function(x) {
if (!missing(x))
data <<- x
else
.self$data
}
),
methods = list(
initialize = function(data) {
if (!missing(data))
d.accessor <<- data
count <<- 0
},
finalize = function()
print('Bye Bye'),
accumulate = function(x)
count <<- count + x
)
)
#example$lock('data') # write-1, read-many
instance <- example$new() # instantiation
df <- data.frame(x=1, y=2)# example df
instance$d.accessor <- df # 1st set - okay!
copyInst <- instance$copy()