• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# RPC错误码
2<!--Kit: IPC Kit-->
3<!--Subsystem: Communication-->
4<!--Owner: @xdx19211@luodonghui0157-->
5<!--Designer: @zhaopeng_gitee-->
6<!--Tester: @maxiaorong-->
7<!--Adviser: @zhang_yixin13-->
8
9> **说明:**
10>
11> 以下仅介绍本模块特有错误码,通用错误码请参考[通用错误码说明文档](../errorcode-universal.md)。
12
13从API version 9起,IPC支持异常返回功能。错误码对应数值及含义如下。
14
15## 1900001 系统调用mmap失败
16
17**错误信息**
18
19Failed to call mmap.
20
21**错误描述**
22
23执行系统调用mmap失败。
24
25**可能原因**
26
271. 映射区域过大。
282. 系统内存压力大,没有足够内存可以用来进行映射。
29
30**处理步骤**
31
321. 请检查调用Ashmem::create()时是否指定了超大内存。
332. 请检查执行映射时系统是否有足够的内存可用。
34
35## 1900002 系统调用ioctl失败
36
37**错误信息**
38
39Failed to call ioctl.
40
41**错误描述**
42
43在共享内存文件描述符上执行系统调用ioctl失败。
44
45**可能原因**
46
471. 设置的参数为内核非法参数。
482. 设置的类型超过了共享内存映射时指定的类型。
49
50**处理步骤**
51
521. 请检查调用指定的参数是否来自Ashmem类的PROT_EXEC、PROT_READ和PROT_WRITE。
532. 请检查指定的参数是否为映射共享内存时所指类型的子集。
54
55## 1900003 共享内存写数据失败
56
57**错误信息**
58
59Failed to write data to the shared memory.
60
61**错误描述**
62
63向共享内存写数据失败。
64
65**可能原因**
66
671. 单次写或者连续写的总内容超过了映射的共享内存大小。
682. 没有对共享内存设置PROT_WRITE模式。
69
70**处理步骤**
71
721. 请检查当前向共享内存所写内容是否已经超过了映射的总大小。
732. 请检查是否设置了PROT_WRITE保护权限。
74
75## 1900004 共享内存读数据失败
76
77**错误信息**
78
79Failed to read data from the shared memory.
80
81**错误描述**
82
83从共享内存读数据失败。
84
85**可能原因**
86
871. 单次写或者连续写的总内容超过了映射的共享内存大小。
882. 没有对共享内存设置PROT_READ模式。
89
90**处理步骤**
91
921. 请检查当前向共享内存所写内容是否已经超过了映射的总大小。
932. 请检查是否设置了PROT_READ保护权限。
94
95## 1900005 ipc对象权限错误
96
97**错误信息**
98
99Operation allowed only for the proxy object.
100
101**错误描述**
102
103只有proxy对象允许该操作。
104
105**可能原因**
106
107在RemoteObject对象上调用了只有RemoteProxy对象支持的方法。
108
109**处理步骤**
110
111请检查是否在RemoteObject对象上调用了只有RemoteProxy对象支持的方法。
112
113## 1900006 ipc对象权限错误
114
115**错误信息**
116
117Operation allowed only for the remote object.
118
119**错误描述**
120
121只有remote对象允许该操作。
122
123**可能原因**
124
125在RemoteProxy对象上调用了只有RemoteObject对象支持的方法。
126
127**处理步骤**
128
129请检查是否在RemoteProxy对象上调用了只有RemoteObject对象支持的方法。
130
131## 1900007 远端对象通信失败
132
133**错误信息**
134
135Communication failed.
136
137**错误描述**
138
139和远端对象进行进程间通信失败。
140
141**可能原因**
142
1431. 远端对象已经销毁。
1442. 远端对象发生了销毁然后重新创建,本端持有的代理对象已经过期。
145
146**处理步骤**
147
1481. 请检查远端对象是否已经销毁。
1492. 请检查是否注册了死亡监听,并且远端对象发生析构又重新创建。
150
151## 1900008 非法的ipc对象
152
153**错误信息**
154
155The proxy or remote object is invalid.
156
157**错误描述**
158
159非法的代理对象或者远端对象。
160
161**可能原因**
162
1631. 代理对象已经失效。
1642. 远端对象已经销毁。
165
166**处理步骤**
167
1681. 请检查proxy对象获取过程是否有异常。
1692. 请检查远端对象是否已经析构。
170
171## 1900009 向MessageSequence写入数据失败
172
173**错误信息**
174
175Failed to write data to the message sequence.
176
177**错误描述**
178
179向MessageSequence写数据失败。
180
181**可能原因**
182
183sequence默认空间已满。
184
185**处理步骤**
186
187请使用MessageSequence提供的获取缓冲区空间相关方法确认是否还有剩余空间。
188
189## 1900010 读取MessageSequence数据失败
190
191**错误信息**
192
193Failed to read data from the message sequence.
194
195**错误描述**
196
197读取MessageSequence数据失败。
198
199**可能原因**
200
201读取和写入顺序不一致。
202
203**处理步骤**
204
205请检查读取的顺序和写入的顺序保持严格一致。
206
207## 1900011 内存分配失败
208
209**错误信息**
210
211Memory allocation failed.
212
213**错误描述**
214
215序列化过程中内存分配失败。
216
217**可能原因**
218
219写入的数据过大,数据取决于当前堆上还有多少可以连续分配的内存。
220
221**处理步骤**
222
223请检查写入的数据或者设置的参数是否过大。
224
225## 1900012 JS方法失败
226
227**错误信息**
228
229Failed to call the JS callback function.
230
231**错误描述**
232
233执行JS回调方法失败。
234
235**可能原因**
236
237业务的JS方法返回失败。
238
239**处理步骤**
240
241请检查业务JS方法是否执行成功。
242
243## 1900013 系统调用dup失败
244
245**错误信息**
246
247Failed to call dup.
248
249**错误描述**
250
251执行系统调用dup失败。
252
253**可能原因**
254
2551. 进程的文件句柄资源已经耗尽。
2562. 入参fd已经被关闭。
257
258**处理步骤**
259
2601. 请检查入参fd是否依然有效。
2612. 请排查进程是否已经耗尽了fd资源。