M******e 发帖数: 160 | 1 一个C的程序,有很多global variable和pointers。原来考虑到的是只让某一个
application来call,现在想让这个程序能被同时被不同的application call。我想到
的办法是建立一个handle,把这些global variable和pointers塞进handle里头去。谁
call这个程序就create一个handle,把这个handle传进去,程序就通过这个handle来
access相应的variable。这个改动还是挺麻烦的,不知道有没有更简单的办法。多谢了
! |
m*****r 发帖数: 130 | 2 你这个是给每个用户一个状态?如果你这个是一个动态library,你的每个用户是有各
自独立的
address space的不需要改啥吧。
当然如果你这个C程序如果有外部的共享状态,那还是要管理一把的。
【在 M******e 的大作中提到】 : 一个C的程序,有很多global variable和pointers。原来考虑到的是只让某一个 : application来call,现在想让这个程序能被同时被不同的application call。我想到 : 的办法是建立一个handle,把这些global variable和pointers塞进handle里头去。谁 : call这个程序就create一个handle,把这个handle传进去,程序就通过这个handle来 : access相应的variable。这个改动还是挺麻烦的,不知道有没有更简单的办法。多谢了 : !
|
a****l 发帖数: 8211 | 3 This kind of changes seem scary to me... Maybe I am weak, but I would assume
lots of problems, hidden or apparent, would appear after such a change.Get
your fingers crossed.
【在 M******e 的大作中提到】 : 一个C的程序,有很多global variable和pointers。原来考虑到的是只让某一个 : application来call,现在想让这个程序能被同时被不同的application call。我想到 : 的办法是建立一个handle,把这些global variable和pointers塞进handle里头去。谁 : call这个程序就create一个handle,把这个handle传进去,程序就通过这个handle来 : access相应的variable。这个改动还是挺麻烦的,不知道有没有更简单的办法。多谢了 : !
|