任何人都可以帮助我获得有关此方法的Socket.setPerformancePreferences(int connectionTime, int latency, int bandwidth)
作用以及它如何影响Socket性能的更多信息吗?Java API信息非常简短且只是介绍性的.任何包含一些示例和一些讨论的链接都将非常有用.我试过谷歌搜索它,但也可以找到非常有用的信息.
jye*_*min 13
以下是Oracle发行版1.6中此方法的源代码:
public void setPerformancePreferences(int connectionTime,
int latency,
int bandwidth)
{
/* Not implemented yet */
}
Run Code Online (Sandbox Code Playgroud)
所以它什么都不做.
小智 1
public void setPerformancePreferences(int connectionTime,
int latency,
int bandwidth)
Run Code Online (Sandbox Code Playgroud)
设置此套接字的性能首选项。套接字默认使用 TCP/IP 协议。某些实现可能会提供具有与 TCP/IP 不同的性能特征的替代协议。此方法允许应用程序表达自己的偏好,即当实现从可用协议中进行选择时应如何进行这些权衡。
性能偏好由三个整数描述,其值表示短连接时间、低延迟和高带宽的相对重要性。整数的绝对值是无关紧要的;为了选择协议,只需比较这些值,值越大表明偏好越强。负值表示优先级低于正值。例如,如果应用程序更喜欢短连接时间而不是低延迟和高带宽,那么它可以使用值 (1, 0, 0) 调用此方法。如果应用程序更喜欢高带宽而不是低延迟,并且更喜欢低延迟而不是短连接时间,那么它可以使用值 (0, 1, 2) 调用此方法。
连接此套接字后调用此方法将不会产生任何效果。
参数: connectionTime - 表示短连接时间延迟的相对重要性的 int - 表示低延迟带宽的相对重要性的 int - 表示高带宽的相对重要性的 int 从: 1.5 开始
但请注意,如果您为 Android 编码,那么在 Eclipse 中,android 文档会告诉我有关此方法的以下信息:
public void setPerformancePreferences (int connectionTime, int latency, int bandwidth)
Run Code Online (Sandbox Code Playgroud)
自:API 级别 1 设置连接时间、延迟和带宽的性能首选项。
该方法目前不执行任何操作。
参数connectionTime 表示短连接时间重要性的值。延迟 该值代表低延迟的重要性。带宽 代表高带宽重要性的值。
请注意“此方法当前不执行任何操作”这一行。我不确定这是否适用于所有 Android 设备,该文档是否已过时或什么,但根据它,这种方法在技术上是存在的,但在 Android 平台上未实现。