大量的双向引用会不会有问题, 有没有什么办法可以解耦双向引用?

2023-09-24 15:48:35 +08:00
 bthulu

比如显卡和显卡驱动, 那显卡肯定得知道自己的驱动吧, 驱动想干活, 那肯定也得知道是哪个显卡吧. 也就是显卡里有一个属性是显卡驱动, 显卡驱动里也得有一个属性是显卡.

再打个比方, 军队里来说 将得知道自己的兵在哪吧, 兵也得知道自己的将是谁吧. 这不又是双向引用了. 有没有啥办法, 可以让将不知兵, 兵不知将, 同时还能完美战斗的?

1678 次点击
所在节点    程序员
8 条回复
Aloento
2023-09-24 15:54:12 +08:00
这时候就要搬出约定大法了
6IbA2bj5ip3tK49j
2023-09-24 15:58:57 +08:00
听说过 interface 吗
fdd92
2023-09-24 16:30:39 +08:00
所以看古代将是什么号兵的。
指挥调度都是之前在训练时候就已经约定好的。可以是令旗、号角等发出进攻或撤退的信号,或者小组编队,一级一级的传令下去。
显卡与显卡驱动想必也是差不多的吧。
fangjue
2023-09-24 16:45:12 +08:00
包括显卡在内的所有 PCI 设备都通过 Vendor ID 和 Device ID 识别。
ivvei
2023-09-24 16:58:35 +08:00
@Aloento 约定就是写死…
shapper
2023-09-24 17:00:52 +08:00
显卡与显卡驱动之间存在一个默默干活的 C ,C 定义了一整套方法,管理显卡与驱动的信息,显卡需要什么都可以从 C 查,反之驱动也可以查到;好与坏在于 C
EscYezi
2023-09-24 17:31:32 +08:00
《安德的游戏》中,差不多就算将不知兵,兵不知将了。甚至将都不知道这是一场战争
tek
2023-09-24 17:53:13 +08:00
如果要解耦的话,那应该是统一所有显卡硬件界面,做出万能显卡驱动,就像免驱的 usb 键盘鼠标一样。在显卡与驱动是一对一强绑定的情况下,互相指向不是问题关键,一对一才是

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/976683

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX