成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站建设、成都网站设计、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的魏县网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
java.lang.Object
|---ohos.rpc.ReliableFileDescriptor
public class ReliableFileDescriptor
extends Object
包装可以从多个线程访问的可靠 FileDescriptor。
此类提供用于创建可靠数据管道和获取包装的 FileDescriptor 或本机文件描述符的方法。
修饰符和类型 | 类 | 描述 |
---|---|---|
static class | ReliableFileDescriptor.AutoCloseFileInputStream | 表示一个文件输入流,其文件描述符在此流关闭时自动关闭。 |
static class | ReliableFileDescriptor.AutoCloseFileOutputStream | 表示一个文件输出流,其文件描述符在此流关闭时自动关闭。 |
构造函数 | 描述 |
---|---|
ReliableFileDescriptor(FileDescriptor fd) | 用于创建具有指定 FileDescriptor 的 ReliableFileDescriptor 实例的构造函数。 |
ReliableFileDescriptor(FileDescriptor fd, FileDescriptor commonFd) | 用于创建具有指定 FileDescriptor 和用于检查文件状态的文件描述符的 ReliableFileDescriptor 实例的构造函数。 |
修饰符和类型 | 方法 | 描述 |
---|---|---|
void | close() | 关闭此 ReliableFileDescriptor 对象。 |
static ReliableFileDescriptor[] | createPipe2() | 创建两个 ReliableFileDescriptor 对象的数组。 |
static ReliableFileDescriptor[] | createReliablePipe() | 创建两个 ReliableFileDescriptor 对象的数组,每个对象都包含一个套接字文件描述符。 |
static ReliableFileDescriptor | dupFromSocket(Socket socket) | 通过复制指定套接字的文件描述符来创建 ReliableFileDescriptor。 |
FileDescriptor | getFileDescriptor() | 获取包装在此可靠文件描述符中的文件描述符。 |
long | getFileTotalSize() | 获取与此文件描述符匹配的文件的大小。 |
int | getNativeFd() | 获取包装在此 ReliableFileDescriptor 中的本机文件描述符。 |
static ReliableFileDescriptor | takeChargeOfFileDescriptor(int fd) | 通过复制现有文件描述符创建 ReliableFileDescriptor。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
public ReliableFileDescriptor(FileDescriptor fd)
用于创建具有指定 FileDescriptor 的 ReliableFileDescriptor 实例的构造函数。
参数:
参数名称 | 参数描述 |
---|---|
fd | 指示要包装在 ReliableFileDescriptor 实例中的 FileDescriptor。 |
public ReliableFileDescriptor(FileDescriptor fd, FileDescriptor commonFd)
用于创建具有指定 FileDescriptor 和用于检查文件状态的文件描述符的 ReliableFileDescriptor 实例的构造函数。
参数:
参数名称 | 参数描述 |
---|---|
fd | 指示要包装在 ReliableFileDescriptor 实例中的 FileDescriptor。 |
commonFd | 指示用于检查文件是否关闭的文件描述符。 |
public FileDescriptor getFileDescriptor()
获取包装在此 ReliableFileDescriptor 中的 FileDescriptor。
返回:
返回包装在此 ReliableFileDescriptor 中的 FileDescriptor。
public int getNativeFd()
获取包装在此 ReliableFileDescriptor 中的本机文件描述符。
这个 ReliableFileDescriptor 仍然拥有文件描述符,它必须通过这个 ReliableFileDescriptor 关闭。
返回:
返回包装在此 ReliableFileDescriptor 中的本机文件描述符。 不要使用返回值来关闭文件描述符或将返回值传递给任何假定文件描述符所有权的方法。 否则,文件描述符将被反复关闭。
public static ReliableFileDescriptor[] createPipe2() throws OsHelperErrnoException
创建两个 ReliableFileDescriptor 对象的数组。
该数组用作数据管道。 这两个对象之一用于读取数据,另一个用于写入数据。
返回:
返回创建的数组。
Throws:
Throw名称 | Throw描述 |
---|---|
OsHelperErrnoException | 如果数组创建失败,则抛出此异常。 |
public static ReliableFileDescriptor[] createReliablePipe() throws IOException, OsHelperErrnoException
创建两个 ReliableFileDescriptor 对象的数组,每个对象都包含一个套接字文件描述符。
该数组用作数据管道。 这两个对象之一用于读取数据,另一个用于写入数据。
返回:
返回创建的数组。
Throws:
Throw名称 | Throw描述 |
---|---|
OsHelperErrnoException | 如果数组创建失败,则抛出此异常。 |
IOException | 如果用于操作数据管道的套接字对创建失败,则抛出此异常。 |
public static ReliableFileDescriptor takeChargeOfFileDescriptor(int fd) throws IOException, OsHelperErrnoException
通过复制现有文件描述符创建 ReliableFileDescriptor。
创建 ReliableFileDescriptor 后,您必须关闭它和现有的文件描述符。
参数:
参数名称 | 参数描述 |
---|---|
fd | 指示现有文件描述符。 |
返回:
返回创建的 ReliableFileDescriptor。
Throws:
Throw名称 | Throw描述 |
---|---|
OsHelperErrnoException | 如果操作文件描述符失败,则抛出此异常。 |
IOException | 如果 ReliableFileDescriptor 创建失败,则抛出此异常。 |
public static ReliableFileDescriptor dupFromSocket(Socket socket) throws IOException, OsHelperErrnoException
通过复制指定套接字的文件描述符来创建 ReliableFileDescriptor。
创建 ReliableFileDescriptor 后,您必须关闭它和套接字。
参数:
参数名称 | 参数描述 |
---|---|
socket | 表示指定的套接字。 |
返回:
返回创建的 ReliableFileDescriptor。
Throws:
Throw名称 | Throw描述 |
---|---|
OsHelperErrnoException | 如果操作文件描述符失败,则抛出此异常。 |
IOException | 如果 ReliableFileDescriptor 创建失败,则抛出此异常。 |
public long getFileTotalSize()
获取与此文件描述符匹配的文件的大小。
返回:
返回匹配此文件描述符的文件大小; 如果此文件描述符与文件不匹配,则返回 -1,例如,文件描述符是通过 Socket 或 Pipe 获得的 ReliableFileDescriptor。
public void close()
关闭此 ReliableFileDescriptor 对象。
网页标题:创新互联鸿蒙OS教程:鸿蒙OSReliableFileDescriptor
文章分享:http://www.mswzjz.cn/qtweb/news0/523650.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能