共用方式為


VoipCallCoordinator.ReserveCallResourcesAsync 方法

定義

多載

ReserveCallResourcesAsync()

保留 VoIP 呼叫所需的 CPU 和記憶體資源。 您應該只在單一進程應用程式模型中使用這個方法。

ReserveCallResourcesAsync(String)

保留 VoIP 呼叫所需的 CPU 和記憶體資源。 您應該只在雙進程應用程式模型中使用這個方法。

ReserveCallResourcesAsync()

保留 VoIP 呼叫所需的 CPU 和記憶體資源。 您應該只在單一進程應用程式模型中使用這個方法。

public:
 virtual IAsyncOperation<VoipPhoneCallResourceReservationStatus> ^ ReserveCallResourcesAsync() = ReserveCallResourcesAsync;
/// [Windows.Foundation.Metadata.Overload("ReserveOneProcessCallResourcesAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<VoipPhoneCallResourceReservationStatus> ReserveCallResourcesAsync();
[Windows.Foundation.Metadata.Overload("ReserveOneProcessCallResourcesAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<VoipPhoneCallResourceReservationStatus> ReserveCallResourcesAsync();
function reserveCallResourcesAsync()
Public Function ReserveCallResourcesAsync () As IAsyncOperation(Of VoipPhoneCallResourceReservationStatus)

傳回

保留動作的結果。

屬性

Windows 需求

裝置系列
Windows 10, version 1809 (已於 10.0.17763.0 引進)
API contract
Windows.ApplicationModel.Calls.CallsVoipContract (已於 v4.0 引進)
應用程式功能
oneProcessVoIP phoneCallHistory phoneCallHistorySystem voipCall

範例

您應該為每個呼叫只呼叫 ReserveCallResourcesAsync 一次。 呼叫新呼叫的後續時間,而另一個呼叫已經存在時,會導致 HRESULT 為 -2147024713 (0x800700b7) 的例外狀況,如程式代碼範例所示。

...
try
{
    status = await vCC.ReserveCallResourcesAsync();
}
catch (System.Exception ex)
{
    if (ex.HResult == -2147024713)
    {
        Debug.WriteLine("CPU and memory resources have already been reserved for your application. Ignore the return value from your call to ReserveCallResourcesAsync, and proceed to handle a new VoIP call.");
    }
}
...

備註

當您的 VoIP 應用程式收到來電通知,或在建立外寄 VoIP 通話之前,請使用這個方法。

每個呼叫都需要個別的資源。 若要同時處理多個 VoIP 呼叫,您必須針對每個呼叫叫用此方法一次。

資源會在上次呼叫完成時自動釋放。

適用於

ReserveCallResourcesAsync(String)

保留 VoIP 呼叫所需的 CPU 和記憶體資源。 您應該只在雙進程應用程式模型中使用這個方法。

public:
 virtual IAsyncOperation<VoipPhoneCallResourceReservationStatus> ^ ReserveCallResourcesAsync(Platform::String ^ taskEntryPoint) = ReserveCallResourcesAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<VoipPhoneCallResourceReservationStatus> ReserveCallResourcesAsync(winrt::hstring const& taskEntryPoint);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<VoipPhoneCallResourceReservationStatus> ReserveCallResourcesAsync(string taskEntryPoint);
function reserveCallResourcesAsync(taskEntryPoint)
Public Function ReserveCallResourcesAsync (taskEntryPoint As String) As IAsyncOperation(Of VoipPhoneCallResourceReservationStatus)

參數

taskEntryPoint
String

Platform::String

winrt::hstring

執行背景工作之應用程式定義類別的名稱。 如需詳細資訊,請參閱 TaskEntryPoint

傳回

保留動作的結果。

屬性

Windows 需求

應用程式功能
phoneCallHistory phoneCallHistorySystem voipCall

範例

您應該為每個呼叫只呼叫 ReserveCallResourcesAsync 一次。 呼叫新呼叫的後續時間,而另一個呼叫已經存在時,會導致 HRESULT 為 -2147024713 (0x800700b7) 的例外狀況,如程式代碼範例所示。

...
try
{
    status = await vCC.ReserveCallResourcesAsync(Current.RtcCallTaskName);
}
catch (System.Exception ex)
{
    if (ex.HResult == -2147024713)
    {
        Debug.WriteLine("CPU and memory resources have already been reserved for your application. Ignore the return value from your call to ReserveCallResourcesAsync, and proceed to handle a new VoIP call.");
    }
}
...

備註

當您的 VoIP 應用程式收到來電通知,或在建立外寄 VoIP 通話之前,請使用這個方法。

每個呼叫都需要個別的資源。 若要同時處理多個 VoIP 呼叫,您必須針對每個呼叫叫用此方法一次。

資源會在上次呼叫完成時自動釋放。

適用於