Even though I wasn't too aware of this shared memory thing, I have to say 
it never caused problems in practice (that I know of...).

I did a function that prints variables that points to the same place, just 
for fun (it's really cool you can do that easily):

julia> x = rand(10,10);

julia> y = vec(x);


julia> whosShared()

y <-> x


function whosShared()


    m = Main

    n = Array(String,0)

    pts = Array(Ptr{Float64},0)


    for v in names(m)

        if isdefined(m,v) &&  typeof(eval(m,v)) <: Array

            push!(n,string(v))

            push!(pts, pointer(eval(m,v)))

        end

    end


    for i=1:length(n)

        for j=(i+1):length(n)

            if pts[i] == pts[j]

                println( string( n[i], " <-> ", n[j] ) )

            end

        end

    end


end




Reply via email to