小编sur*_*rrz的帖子

GCC 5.1循环展开

给出以下代码

#include <stdio.h>

int main(int argc, char **argv)
{
  int k = 0;
  for( k = 0; k < 20; ++k )
  {
    printf( "%d\n", k ) ;
  }
}
Run Code Online (Sandbox Code Playgroud)

使用GCC 5.1或更高版本

-x c -std=c99 -O3 -funroll-all-loops --param max-completely-peeled-insns=1000 --param max-completely-peel-times=10000
Run Code Online (Sandbox Code Playgroud)

部分循环展开,它将循环展开十次然后进行条件跳转.

.LC0:
        .string "%d\n"
main:
        pushq   %rbx
        xorl    %ebx, %ebx
.L2:
        movl    %ebx, %esi
        movl    $.LC0, %edi
        xorl    %eax, %eax
        call    printf
        leal    1(%rbx), %esi
        movl    $.LC0, %edi
        xorl    %eax, %eax
        call    printf
        leal    2(%rbx), %esi
        movl    $.LC0, %edi …
Run Code Online (Sandbox Code Playgroud)

c gcc loops compiler-optimization loop-unrolling

6
推荐指数
1
解决办法
541
查看次数

Google Drive 同意屏幕卡住

我正在尝试在 Google Drive 上备份我的 Android 应用程序的应用程序数据。因此,我请求使用 google_sign_in 包访问https://www.googleapis.com/auth/drive.appdatahttps://www.googleapis.com/auth/drive.file范围。

我在 Google 开发者控制台上创建了一个项目,启用了 Drive API,并将范围添加到 OAuth 同意屏幕,并添加了包含包名称和调试密钥的 SHA-1 的 OAuth 客户端 ID。

如果我不请求任何范围,该应用程序工作正常,但请求“驱动”范围会使同意屏幕卡住并且永远加载。我有什么遗漏的吗?

以下是应用程序的代码和卡住的屏幕加载 同意屏幕加载

import 'package:flutter/material.dart';
import 'package:google_sign_in/google_sign_in.dart';

Future<GoogleSignInAccount> handleSignIn() async {
  try {
    return await GoogleSignIn(
      scopes: [
        'https://www.googleapis.com/auth/drive.appdata',
        'https://www.googleapis.com/auth/drive.file',
      ],
    ).signIn();
  } catch (error) {
    print(error);
    return null;
  }
}

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: Scaffold(
        appBar: …
Run Code Online (Sandbox Code Playgroud)

android dart google-drive-api google-signin flutter

6
推荐指数
1
解决办法
1499
查看次数