ICE第四篇-----python版本
2013-11-14 11:58
417 查看
ice文件:
module Modipplace {
interface Ipplace{
string iptoplace(string s);
};
};
server文件:
ipplace_interface(ip):
省略
class IpplaceI(Modipplace.Ipplace):
def iptoplace(self,ip,current=None):
result = ipplace_interface(ip)
return result
if __name__ == "__main__":
reload(sys)
sys.setdefaultencoding("utf-8")
status = 0
ic = None
try:
ic = Ice.initialize(sys.argv)
adapter = ic.createObjectAdapterWithEndpoints("ipplaceAdapter", "tcp -p 5100")
object = IpplaceI()
adapter.add(object,ic.stringToIdentity("simpleIpplace"))
adapter.activate()
print "ice actuvated"
ic.waitForShutdown()
except:
traceback.print_exc()
status = 1
if ic:
# Clean up
try:
ic.destroy()
except:
traceback.print_exc()
status = 1
sys.exit(status)
client文件:
import sys,Ice
import Modipplace
if( len(sys.argv)!=2 ):
print "error , the usage is : ",sys.argv[0]," ip address"
exit(1)
ic=Ice.initialize(sys.argv)
base=ic.stringToProxy("simpleIpplace:tcp -p 5100")
ipplacer=Modipplace.IpplacePrx.checkedCast(base)
if not ipplacer:
raise RuntimeError("Invalid proxy")
print sys.argv[1],type(sys.argv[1])
place = ipplacer.iptoplace(sys.argv[1])
print "place: ",place
问题;这个是同步的情况,异步的情况很难写阿
参考:
两个简单的示例
http://blog.csdn.net/cp62/article/details/3502731
http://blog.sina.com.cn/s/blog_5fddeaac0101266r.html
module Modipplace {
interface Ipplace{
string iptoplace(string s);
};
};
server文件:
ipplace_interface(ip):
省略
class IpplaceI(Modipplace.Ipplace):
def iptoplace(self,ip,current=None):
result = ipplace_interface(ip)
return result
if __name__ == "__main__":
reload(sys)
sys.setdefaultencoding("utf-8")
status = 0
ic = None
try:
ic = Ice.initialize(sys.argv)
adapter = ic.createObjectAdapterWithEndpoints("ipplaceAdapter", "tcp -p 5100")
object = IpplaceI()
adapter.add(object,ic.stringToIdentity("simpleIpplace"))
adapter.activate()
print "ice actuvated"
ic.waitForShutdown()
except:
traceback.print_exc()
status = 1
if ic:
# Clean up
try:
ic.destroy()
except:
traceback.print_exc()
status = 1
sys.exit(status)
client文件:
import sys,Ice
import Modipplace
if( len(sys.argv)!=2 ):
print "error , the usage is : ",sys.argv[0]," ip address"
exit(1)
ic=Ice.initialize(sys.argv)
base=ic.stringToProxy("simpleIpplace:tcp -p 5100")
ipplacer=Modipplace.IpplacePrx.checkedCast(base)
if not ipplacer:
raise RuntimeError("Invalid proxy")
print sys.argv[1],type(sys.argv[1])
place = ipplacer.iptoplace(sys.argv[1])
print "place: ",place
问题;这个是同步的情况,异步的情况很难写阿
参考:
两个简单的示例
http://blog.csdn.net/cp62/article/details/3502731
http://blog.sina.com.cn/s/blog_5fddeaac0101266r.html
相关文章推荐
- ICE第四篇-----python版本
- Zeroc Ice 3.5.1 生成 vs2015 c++ 版本库
- python查看如何查看版本信息
- CentOS更换python版本后,yum不可用的问题
- linux下编译安装python3.6.2即是升级本机的python2版本到3
- Python在Snow Leopard中切换版本的命令
- Python模块及版本
- CIFAR-10数据集可视化Python版本
- mod_python 3.3.1支持python 2.6版本的编译
- Django -- 0x02、Django连接MySQL(下)(Python3版本)
- Linux使用pip从存在Python版本无法匹配的情况
- GDAL的python版本安装使用
- ZeroMQ消息模型代码实现(Python版本)
- Ubuntu 装python3,但是不要改动系统默认python解释器的版本,源码安装的步骤
- 用于转换和恢复从ipa文件中,提取到的png文件的Python脚本 支持Python 3.3版本
- python多版本安装package
- 实战 virtualenv 搭建多版本 Python 环境
- Python2.x版本中基本的中文编码问题解决
- python3.x 判断当前版本【简单版】
- python多版本共存