gpt4 book ai didi

java - 当将一个函数作为另一个函数内的参数发送时,我是否采用第一个功能键(同步)

转载 作者:行者123 更新时间:2023-12-01 04:52:01 25 4
gpt4 key购买 nike

我的问题是这样的:假设我有这些行:

Person p, q;
p.go(q.getAddress());

现在,函数 go() 和 getAdress() 已同步。假设函数 getAddress() 需要一段时间才能返回,那么此时 go() 函数会被锁定吗?意思是:p会得到go()函数同步的“ key ”吗?谢谢!

最佳答案

旁注:作为一种语言功能,同步可能会让您认为您锁定了代码的各个部分。您应该抵制这种诱惑:您不是锁定代码,而是保护您的数据,以确保某些不变量在任何地方都是正确的,除了您暂时破坏它们的某些部分之外。 p>

现在让我们看看计算表达式时会发生什么:

q.getAddress entered
q.getAddress returns
p.go entered
p.go returns

两个“同步”都不会发生在另一个内部,并且 q.getAddressp.go 之间存在一个窗口,其中两个都不会发生同步可以保护任何东西。这是您想知道的吗?

关于java - 当将一个函数作为另一个函数内的参数发送时,我是否采用第一个功能键(同步),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14800341/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com