socketref,再见!高德

https://github.com/adoggie

  C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  246 Posts :: 4 Stories :: 312 Comments :: 0 Trackbacks

常用链接

留言簿(54)

我参与的团队

搜索

  •  

最新评论

阅读排行榜

评论排行榜

#

为了解决公共网络与私有网络的穿透问题,Ice提出了在单个tcp连接上的双向传输方式
一直以来对于Server端主动发送Rpc请求到Client端的应用我就一直很小心的使用bidirection方式,甚至是彻底不用,
因为通过验证发觉要使用bid则必须关闭ACM管理,也就意味着这个tcp连接是个长连接,只有在这个长连接上server才能
发起对客户端的rpc调用,但如果连接断了呢,client到server的rpc请求很简单,ice会重新发起连接,但之后的server到client的
rpc请求就不行了,这样必须要求client再次初始化bid操作:
1 proxy->ice_getConnection()->setAdapter(adapter);
2 proxy->addClient(ident);
这个也太可怕了,Ice是不要求客户直接管理底层的通信连接细节的,所以客户不容易知道是否被重新连接
所以这个咚咚我个人觉得是鸡肋,不知大家如何看同

Limitations
Bidirectional connections have certain limitations:
• They can only be configured for connection-oriented transports such as TCP and SSL.
1168 Connection Management
• Most proxy factory methods have no effect on a proxy created by a connection’s
createProxy operation. The proxy is bound to an existing connection,
therefore the proxy reflects the connection’s configuration. For example, it is
not possible to change the timeout value of such a proxy. Similarly, it is not
possible to change the proxy’s security configuration: if the incoming connection
is secure, then the proxy must be secure, and cannot be changed to be
insecure. However, it is legal to change between oneway and twoway invocations.
• A connection established from a Glacier2 router to a server is not configured
for bidirectional use. Only the connection from a client to the router is bidirectional.
However, the client must not attempt to manually configure a bidirectional
connection to a router, as this is handled internally by the Ice run time.
• Bidirectional connections are not compatible with active connection management
(see Section 37.4).

posted @ 2009-06-23 03:17 放屁阿狗 阅读(2586) | 评论 (2)编辑 收藏

wxThread在遭遇了多次的调试苦头之后,还是老实改用CreateThread(). wxThread使我陷入茫茫的误区,TLS乱报错、线程中串口读写失败等等,使用CreateThread()才是正道
posted @ 2009-04-23 17:57 放屁阿狗 阅读(1529) | 评论 (2)编辑 收藏

现有库WG2CHN,朋友告知为四维的经纬度校准函数库,函数原型如下

WG2CHN_API unsigned int Gps2CN(unsigned int wg_lng,//input WGS84 longitude from GPS (LSB=1/1024 S)
                               unsigned int wg_lat,//input WGS84 latitude from GPS (LSB=1/1024 S)
                               int wg_heit,//input present altitude (LSB=1m))
                               unsigned  int *china_lng,//output shifted longitude (LSB=1/1024 S)
                               unsigned int *china_lat//output shifted latitude (LSB=1/1024 S)
                               );
不管如何调用参数带入,均失败,不知法门,只是看到带入参数类型都是无符整型,所以将经纬度全取整小数点,请了解此库的朋友帮忙!
unsigned int r = Gps2CN(121462959,31241604,50,&olon,&olat);

posted @ 2009-04-10 11:18 放屁阿狗 阅读(1119) | 评论 (0)编辑 收藏

初始化过程:
AT                    回应:OK                    //测试端口是否连接
AT&F                回应:OK                    //恢复到出厂设置
ATZ                    回应:OK                    //将所有参数值恢复到出厂设置
AT&W                回应:OK                    //保存设置
*ATE0                回应:OK                    //输入的命令不回显
AT+IPR=115200        回应:OK                    //设置波特率
AT+CMEE=2            回应:OK                    //获得ME扩展错误代码
AT+CPIN?                回应:+CPIN: READY            //间接测试SIM卡是否插好,原意用来查看PIN码
AT+CIMI                回应:SIM卡的全球识别号,OK    //判断SIM卡是否正常工作
AT+CSQ                回应:XX,99                //测试网络信号强度,在10~31范围内即可
AT+CGREG?            回应:+CGREG:0,1 OK            //判断网络是否登记入网
AT+CGDCONT=1,”IP”,”CMNET”        回应:OK        //设置为IP方式,接入移动梦网
AT$HOSTIF=2            回应:OK                    //设置TCP透传模式
AT$AREG=1            回应:OK                    //自动登录设置
*AT$PADDST=”61.152.242.117”,8401    回应:OK        //设置服务器地址,端口号,可能由外部输入
AT$PADDISC=1            回应:OK                    //保证可以从透传模式下退出
*AT$IDLETO=300        回应:OK                    //设置闲置自动断线间隔
AT&C1                回应:OK                    //通过DCD管脚监视网络连接情况
AT&W                回应:OK                    //保存设置
ATD*99#                回应:OK   CONNECT            //拨号,上网了,可以开始发送数据。当再次收到OK时表示断线,也可由DCD判断
AT$DISC                回应:OK    OK                //主动从网络上断开

断线监视:
当DCD脚为高电平时,说明断线,可由硬件监视该脚。当透传模式被挂起时,DCD也为高电平














posted @ 2009-02-08 22:23 放屁阿狗 阅读(2423) | 评论 (1)编辑 收藏

用习惯了shared_ptr<>,但其是不能线程安全的
posted @ 2009-02-08 22:21 放屁阿狗 阅读(422) | 评论 (0)编辑 收藏

     摘要: wince 流驱动编写非常繁琐,往往容易编写接口的时候犯错采用宏和虚函数的特性编写简洁的类来封装这些操作使用方式: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1  2 class test_d...  阅读全文
posted @ 2009-02-08 22:18 放屁阿狗 阅读(1577) | 评论 (0)编辑 收藏

由于项目需要,考量了qt4.3和wxwidgets2.8.7之后选择了后者
在开发过程中发现越来越受其功能限制,明显 widgets丰富程度大不如qt,看到qt能做那么多花哨的ui,可是wx却并不出彩
项目中涉及的ui皮肤设计,翻遍wx资源,发现wx没有对应的解决方案,代码也膨胀到好大了,不能换了
msw底部采用了win32原生组件 comntrl,treelist居然不能简单的处理checkbox的功能
wxCheckListBox居然不能使用setClientObject(),晕倒!
wx的那些ui组件使用起来比mfc好不了多少,以后还是用qt来做算了
翻遍2.8.7代码居然没有base64实现,在2.9.0添加进去了,但这个版本还并不稳定


posted @ 2009-02-08 22:08 放屁阿狗 阅读(2290) | 评论 (2)编辑 收藏

eboot.nb0是不携带区块下载标识数据的,就是直接可运行的romimage代码,奇怪的现象是在有些机器上无法自动产生eboot.nb0
google了网络发现如下几种方法:
方法1、把工程目录和PB放在同一个磁盘下。
方法2、使用WinHex或UltraEdit等十六进制编辑器修改“\WINCE500\PUBLIC\COMMON\OAK\BIN\I386\romimage.exe”文件,把偏移地址0x25a7b上的“6A  01”改成“6A  03”
方法3. 查看一下是否有eboot.bin文件生成,如果有,可以使用cvrtbin命令生成nb0

posted @ 2008-08-26 02:05 放屁阿狗 阅读(1390) | 评论 (0)编辑 收藏

1.       地图层的裁剪: 原始的数据图层包含大量的feature信息,比如路径上存在大量的顶点vertex,由于vertex过密,导致绘制时消耗的时间过大,所以对地图数据要预处理,减化路径复杂度来加速绘制速度。自行编写处理算法,好像geos库有路径简化的实现,或者使用clibslib处理

2.       设置图层可视范围:  每种图层是否显示要根据设置的可视范围来判别,没有达到指定的显示范围,层对象就是隐藏

3.       相同类型图层对象子类化: 道路可以分国道、省道及更小单位的对象,每种对象划分在不同的图层上,根据设定的可视范围来决定是否进行绘制

4.       spatial indexed: 选择地图数据的存储方式来加速访问图层数据。Qgis的效率很低,通过ogr库虽然能访问多种gis数据,但是当选择REct进行搜索时却是遍历图层所有对象(feature),此法效率低下。Rtree indexed算法能改善此种效果,但目前尚无对此算法研究。选择空间数据库存储是个好的方法。对于地图集中式管理可以采用pgsql-postgis或者mysql-sptial db,或者oracle sde,发现微软sql-server 2005目前也有空间数据库引擎。

对于本地文件型地图存储方式,观察到很多国内地图引擎产商采用自己的文件格式,一个省区的地图数据处理之后只有10M,目前尚无经历去研究此种存储方式,唯一简单的就是采用sqlite+spatialite来实现空间数据存储,其实现了ogc的部分spatial sql,看其介绍尚无rtree算法(builtin),可能对于超大的数据量的处理性能会差很多

5.       缩放重绘:只有在缩放操作时才进行地图数据的查询加载

6.       对于进行Pan操作时平滑的现实,采用图层显示区域缓存的方式。地图显示区域进行pan时,可能要对8个方向进行拖动,比如显示区域320×240,那请求区域时请求320×3240×3区域的feature对象,当往下拖动地图时上部的缓存区域将出现无效区域,完成拖放时将上部缓冲区域填充,此种方法如同openlayers技术。Qgis未采用此方式,修改可能涉及代码挺多。

posted @ 2008-07-16 02:37 放屁阿狗 阅读(896) | 评论 (0)编辑 收藏

auto_ptr A,B A=B之后B指向内容将失效, auto_ptr属于scoped smart pointer


posted @ 2008-07-13 00:34 放屁阿狗 阅读(454) | 评论 (0)编辑 收藏

仅列出标题
共25页: First 12 13 14 15 16 17 18 19 20 Last