blob: 63a9168133aa8bf2719e4ba8d010a5a86982ac5b [file] [log] [blame]
// Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// VMOptions=--worker-thread-priority=12
import 'dart:ffi';
import 'dart:io';
import 'package:expect/expect.dart';
// Value of "PRIO_PROCESS".
const int kPrioProcess = 0;
const int kCurrentThreadId = 0;
// int getpriority(int which, id_t who)
typedef GetPriorityFT = int Function(int which, int who);
typedef GetPriorityNFT = Int32 Function(Int32 which, Uint32 who);
final getPriority = DynamicLibrary.process()
.lookupFunction<GetPriorityNFT, GetPriorityFT>('getpriority');
main(args) {
if (Platform.isLinux || Platform.isAndroid) {
Expect.equals(12, getPriority(kPrioProcess, kCurrentThreadId));
}
}