num_cpus包给了我核心数,但这包括超线程核心。在我的情况下,这比使用真实核心要快得多(几乎2倍)。
答案 0 :(得分:1)
如本博客binding所述,您可以对hwloc库使用防护post来执行此操作。
它可以在各种平台下使用,并允许您计算物理核心和逻辑处理单元(如果是超线程),就像这样(来自博客文章的代码):
package com.example.android.bluetoothlegatt;
public class DatabaseHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME="mydb.db";
public static final String TABLE_NAME="mytable";
public static final String COL_1="MobileID";
public static final String COL_2="DeviceName";
public static final String COL_3="Time";
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table " + TABLE_NAME + "(MobileID TEXT, DeviceName TEXT, Time TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXIST "+TABLE_NAME);
onCreate(db);
}
public boolean insertData(String mobileid, String devicename, String time)
{
SQLiteDatabase db= this.getWritableDatabase();
ContentValues contentValues=new ContentValues();
contentValues.put(COL_1,mobileid);
contentValues.put(COL_2,devicename);
contentValues.put(COL_3,time);
long result=db.insert(TABLE_NAME,null,contentValues);
if(result==-1)
return false;
else
return true;
}
}