генерируйте загрузку ЦП в Java

Поскольку ответа от Microsoft не было больше месяца, я знаю, что единственный способ исправить это - перехватить вызов до того, как он попадет в часть кода Microsoft (с использованием промежуточного программного обеспечения), и изменить его на формат, который они ожидают: \

Я обсудил проблему и решение в следующей ссылке, но я все еще жду исправления от Microsoft: \ http: //pilpag.blogspot .com / 2019/02 / enable-scim-using-microsoftsystemforc.html

Простое исправление выглядит так:

public class PatchRequestUpdaterMiddleware : OwinMiddleware

{

     private const string OperationValueFinderRegex = "({[\\s\\w\":,.\\[\\]\\\\]*op[\\s\\w\":,.\\[\\]\\\\]*\"value\"\\s*:\\s*)(\"[\\w\\s\\-,.@?!*;\'\\(\\)]+\")"; //{"op":"x","value":"Andrew1"}

public override async Task Invoke(IOwinContext context)

    {

        if (context.Request.Method.ToLower() != "patch")

        {

            await Next.Invoke(context);

            return;

        }

        var streamReader = new StreamReader(context.Request.Body);

        string body = streamReader.ReadToEnd();

        body = Regex.Replace(body, OperationValueFinderRegex, m => $"{m.Groups[1].Value}[{{\"value\":{m.Groups[2].Value}}}]"); //{"op":"x","value":"Ashkan"} ==>> {"op":"x","value":[{"value":"Ashkan"}]}

        context.Request.Body = new MemoryStream(Encoding.UTF8.GetBytes(body));

        await Next.Invoke(context);

    }

 }

И просто добавьте это к провайдеру, которого вы создали:

class myProvider:ProviderBase

{

....

   private void OnServiceStartup(IAppBuilder appBuilder, HttpConfiguration configuration)

        {

...

  appBuilder.Use();

...

}

10
задан Air 19 December 2008 в 21:09
поделиться

4 ответа

Зашифруйте строку (в цикле) путем вызова Cipher.update (). Алгоритмы шифрования по определению очень трудно оптимизировать. Единственная проблема состоит в том, что существует некоторая нетривиальная установка, которую необходимо выполнить. Я отмечаю этот ответ как общественную Wiki, так, чтобы кто-то, кто записал это недавно, мог заполнить его.

4
ответ дан 3 December 2019 в 21:23
поделиться

Вы могли попробовать что-то простое как

private static void spin(int milliseconds) {
    long sleepTime = milliseconds*1000000L; // convert to nanoseconds
    long startTime = System.nanoTime();
    while ((System.nanoTime() - startTime) < sleepTime) {}
}

Тест:

public static void main(String[] args) {
    final int NUM_TESTS = 1000;
    long start = System.nanoTime();
    for (int i = 0; i < NUM_TESTS; i++) {
        spin(500);
    }
    System.out.println("Took " + (System.nanoTime()-start)/1000000 +
        "ms (expected " + (NUM_TESTS*500) + ")");
}

Мой вывод:

$ java SpinTest
Took 500023ms (expected 500000)

Таким образом, цикл не стал оптимизированным далеко (и да, я пронзил свой ЦП к 100% в течение восьми минут только для тестирования этого :)).

11
ответ дан 3 December 2019 в 21:23
поделиться

Создайте очень большое количество случайных объектов и затем чередуйте вызовы к Collections.shuffle() и Collections.sort().

Я использовал Джакартскую палату общин Lang для генерации случайных строк в целях переставлять/сортировать.

2
ответ дан 3 December 2019 в 21:23
поделиться

Создайте матрицу и сделайте несколько матричных манипуляций.

Можно настроить это довольно легко путем варьирования размера матрицы.

0
ответ дан 3 December 2019 в 21:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: