以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  有关项目启动速度的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=25175)

--  作者:zharen110
--  发布时间:2012/11/2 11:11:00
--  有关项目启动速度的问题
我在项目启动时加了数据库连接是否成功的判断,
问题来了,如果数据库连接不上,我要等上半分钟才能看到提示信息,我的数据库是装在本机上的,电脑配置也不差,
请教各位大神,怎么改进能提高启动效率,我想参考
图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看
商家宝 的启动方式,如果连接不上数据库,会在3秒内给出错误信息提示.
下面是我在 BeforeOpenProject 里面的代码,求指点
Try
    Dim Client As System.Net.Sockets.Socket = New System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Stream, System.Net.Sockets.ProtocolType.Tcp)
    Client.Connect("192.168.1.66", "1433" )
    Client.Close()
Catch Ex As Exception
    e.HideSplashForm = True
    MessageBox.Show("连接不到数据库,请检查您的网络连接!","提示",MessageBoxButtons.OK ,MessageBoxIcon.Information)
    
    e.Cancel = True
    Return
End Try
[此贴子已经被作者于2012-11-2 11:19:05编辑过]

--  作者:lin_hailun
--  发布时间:2012/11/2 11:28:00
--  
 先ping一下这个地址,然后再连接。

 连接之前,新开一个线程,用于计时,超过时间,弹出对话框。

 应该没有便捷的方法?
[此贴子已经被作者于2012-11-2 11:28:44编辑过]

--  作者:zharen110
--  发布时间:2012/11/2 11:35:00
--  
老大能给点代码提示吗, 我没用过ping 和 线程
--  作者:狐狸爸爸
--  发布时间:2012/11/2 11:44:00
--  

看这里的示例五:

 

http://www.foxtable.com/help/topics/0682.htm

 


--  作者:lin_hailun
--  发布时间:2012/11/2 11:55:00
--  
ping 看这里 http://www.foxtable.com/help/topics/1401.htm

------------------------------------------------------------------------

线程比较麻烦:

Dim t As System.Threading.Thread = New System.Threading.Thread(AddressOf 你的函数名)
t.Start()

在你的函数里,写入获得时间,比较时间的代码……
[此贴子已经被作者于2012-11-2 11:56:11编辑过]

--  作者:zharen110
--  发布时间:2012/11/2 13:10:00
--  
好的,谢谢
--  作者:hanxuntx
--  发布时间:2012/11/2 13:13:00
--  
学习了,呵呵。帮助要好好看。
--  作者:xuezxz
--  发布时间:2013/1/14 23:16:00
--  

同样的问题就不开新帖了

想知道一下,是不是生成的关联表多了也会影响启动速度?

还有,代码优化提高启动速度要从哪些方面着手呢?


--  作者:blackzhu
--  发布时间:2013/1/15 8:04:00
--  
      这个除了不加载数据 还有的办法就是不能加载表在内部了,其余没啥好办法.


至于网络不通的提示,老大至今没有提供一个非常好的办法  往往网络断了,卡死系统.

--  作者:狐狸爸爸
--  发布时间:2013/1/15 8:17:00
--  
老朱,关于网络断了,下次更新可以解决的,网络断了或通了,都会触发一个事件。