Mich wundert halt nur, dass trotz Service meine Activity einfriert.
Weil ein Service im gleichen Thread ausgeführt wird wie die Activity. Um es "wirklich" im Hintergrund zu haben, müsstest Du einen eigenen Thread starten.
Die Lösung von Kiffi könnte auch langsam sein, weil ein recht komplexes statement aufgebaut wird.
Ich würde um den ganzen Block eine Transaktion packen:
Sub Service_Start(StartingIntent As Intent)
Database.mySQL.BeginTransaction
For c = 0 To SocketService.DataForTransactionMap.Size - 1
Database.mySQL.ExecNonQuery2("DELETE FROM DBLog WHERE id = ?", Array As String(SocketService.DataForTransactionMap.GetKeyAt(c)))
Next
Database.mySQL.TransactionSuccessful
Database.mySQL.EndTransaction
SocketService.DataForTransactionMap.Clear
End Sub
Aber wie gesagt, wenn es Deine Activity nicht beeinflussen soll, muss Du das in einem eigenen Thread machen.